1

Spring Social を使用して、Facebook の友達とその場所のリストを取得しようとしています。私が見る限り、Spring Social はアクセス トークンを次のように HTTP リクエスト ヘッダーに挿入します。

Authorization: OAuth AAAFDa6Gl4usBAJH4...

access_token パラメータとして URL に追加する代わりに。その結果、リクエストは位置データを含まない基本情報のみを返します。ヘッダーのアクセス トークンが有効であることがわかります。これを GET リクエストに手動で含めると、場所を含む完全なデータセットが返されるためです。

誰かがこの問題を以前に見たことがあり、何が問題なのか教えてもらえますか?

4

1 に答える 1

0

Spring SocialがアクセストークンをそのようにAuthorizationヘッダーに配置するのは正しいです(OAuth 2仕様のドラフト10による)。さて、これはおそらく最近のドラフトからの「ベアラー」トークン形式を使用しているはずですが、私は過去数日間、Spring Social Facebookを使用して、あなたがやろうとしていることを正確に実行しています-ユーザーの友達をフェッチします-そしてそれはうまく機能しています。

Facebookのドキュメントは、access_tokenクエリパラメーターをAuthorizationヘッダーよりも大幅に宣伝しているようですが、APIはどちらかをサポートしています(常にサポートしています)。したがって、与えられたトークンにユーザーの友達を表示する権限が付与されていると仮定すると、それは機能するはずです。

実際、私はこれを二重に確認しました。まず、Facebookに接続されたSpring Social Showcase(https://github.com/SpringSource/spring-social-samples/tree/master/spring-social-showcase)を使用しました。次に、左側のメニューの[友達]リストをクリックしました。機能した。また、有効なアクセストークンを取得し、ブラウザーでhttps://graph.facebook.com/me/friendsを指定し、ブラウザーのヘッダーの変更プラグインを使用して、承認ヘッダーを「OAuth{mytoken}」に設定しました。働いた。

万が一、Spring Social Showcase(Spring Social Facebookを隠蔽して使用している)でこれを試したことはありますか?あなたがそこで同じ問題に直面しているかどうか疑問に思います。

しかし、これについて質問してくれてありがとう。「OAuth」(これも機能していることを確認しました)の代わりに「Bearer」を使用するようにヘッダーを更新する必要があることを思い出しました。

于 2012-09-15T21:11:39.420 に答える