Facebook C#SDKを使用して、会社ページの壁に投稿を公開しようとしています。 これはバッチジョブから行う必要があるので、これは特定のユーザーが対話しているWebアプリケーションではありません。 自分のFacebook IDの下にFacebookアプリケーションを設定しました。私は、自分のアカウントでpublish_stream、share_item、offline_access、およびmanage_pages権限を与えました。 (私のFacebookの設定ページでは、これらのアクセス許可がアプリに与えられていることを確認できます)。私が投稿しようとしている会社のページは自分で作成したページなので、フルアクセスできるはずです。C#SDKを使用してオフラインアプリから会社のFacebookページに投稿するにはどうすればよいですか?
私は、このアプリケーションのアプリIDと秘密を使ってFacebookに認証しています。アクセストークンを取得し、メッセージをまとめて投稿してから投稿しようとしています。
Facebook.FacebookOAuthException was unhandled by user code
Message=(OAuthException) (#200) The user hasn't authorized the application to perform this action
私はテーマについていくつかのバリエーションを試しましたが、私が間違っていることを理解できないようです。ここ は、私のコードのビットです:
var client = new FacebookClient("APP ID", "SECRET");
_log.DebugFormat("access token={0}", client.AccessToken);
dynamic parameters = new ExpandoObject();
parameters.message = "testing 123";
/* fill in other parameters */
dynamic result = client.Post(FanPageId+"/feed", parameters);
/* here's where I get the exception */
私は私/アカウント/から返されたデータのうち、ページ固有のアクセストークンを引っ張っへの参照を見てきましたが、私はからのことを行う方法を見つけ出すことはできませんFacebookユーザーとしてではなく、Facebookアプリとして認証しているオフラインアプリです。
UPDATE:「無期限のOAuthのトークンは」一つです
var client = new FacebookClient("NON-EXPIRING OAUTH TOKEN");
を...:私はフェイスブックに接続するためのコードのこのビットを使って、そこに道の一部を得ている問題のアプリのFacebookのデベロッパーアプリに表示されます。
これはまだ自分のIDで投稿されています。だから、投稿をページ自体から来ているように見えるようにするための余計なステップを踏む必要があります。
おそらく、あなた自身がmanage_pages権限を求めてから、ページ上で何かできることでしょう。 – Ashfame