0


FacebookSDK3.1を使用してユーザーからFacebookページに写真を投稿しようとしています。
次のコードを使用して画像のアップロードリクエストを作成している場合:

FBRequest *uploadPhotoRequest = [FBRequest requestWithGraphPath:@"/${FAN_PAGE_ID}/photos/" parameters:[NSDictionary dictionaryWithObjectsAndKeys:self.imageToShare, @"source", nil] HTTPMethod:@"POST"];

画像は、ページのタイムラインではなく、ユーザーのタイムラインに直接送信されます。

しかし、私がリンクを投稿しているとき:

FBRequest *request = [FBRequest requestWithGraphPath:@"/${FAN_PAGE_ID}/feed/" parameters:[NSDictionary dictionaryWithObjectsAndKeys:@"http://stackoverflow.com", @"link", nil] HTTPMethod:@"POST"];

投稿をFacebookページに正しくリンクします。

セッションを開くために、私はコードを使用しています:

[FBSession openActiveSessionWithPermissions:[NSArray arrayWithObjects:@"publish_stream", @"photo_upload", nil]
                               allowLoginUI:YES
                          completionHandler:^(FBSession *session, FBSessionState state, NSError *error) {
...
                          }];

openActiveSessionWithPermissionsiOS 5と6で同等のSSO動作を行うために使用することで、これは非推奨になっていることを私は知っています。

アップデート

または、アクセストークンを使用して写真をアップロードすることはできますか?ユーザーアクセストークンの代わりにページアクセストークンを使用する。はいの場合、ユーザーにページ管理者としてのログインを強制せずに、プログラムでページアクセストークンを取得するにはどうすればよいですか?

何をすればいいですか?
ありがとう!

BR。ユージーン。

4

1 に答える 1

4

https://developers.facebook.com/docs/reference/api/page/#photosによると、

「publish_streamおよびmanage_pages権限を使用してPAGE_ID/photosにHTTPPOSTリクエストを発行することで、ページのウォールに写真を投稿できます[…]」</ p>

「通常の」ユーザーは、APIを介してページの壁に画像を投稿することは許可されていないようです。

于 2012-10-02T11:18:31.333 に答える