2

リクエストトークンを返すと(私はサーバーです)、レスポンスの本文で値を送信します。

oauth_token=946ccd316c&oauth_token_secret=395cfee8ca&oauth_callback_confirmed=true

ダンスオーバーができるかどうかを考えていますjsonp。署名とリクエストは正常に機能しますが、本文はjsonではないため、解析中に応答が失敗します。

したがって、次のように、jsonp instedとしてコード化された本文で返信できます(クライアントが要求した場合)。

callback({oauth_token:'946ccd316c',oauth_token_secret:'395cfee8ca',oauth_callback_confirmed:true})

そしてそれはおそらくうまくいくでしょう。私の質問は次のとおりです。

これはすべての基準を破るでしょうか?本文のエンコーディングを変更することはできますか?もっと良い方法はありますか?

4

2 に答える 2

2

OAuth仕様では、トークンを送信するための形式は指定されていません。ですから、あなたが示したように、JSONオブジェクト内にそれを返すのは良いことだと思います。

実際、Googleは以下に示すようにJSONオブジェクト内のaccess_tokenも返します。

response :{
  "access_token" : "ya29S6ZQbiBQpA5Rz8oty00xj-xydfdfddteerer-1eM",
  "token_type" : "Bearer",
  "expires_in" : 3600
 }
于 2013-03-01T17:25:54.897 に答える
1

OAuth2.0標準を見てください-RFCはここにあります。必要なアクセストークンの動作については、セクション4.4.2(アクセストークン要求)および4.4.3(アクセストークン応答)に関心があります。応答の本文の形式は指定されていません。実際、JSONでエンコードされたアクセストークン応答の仕様に示されている例があります。コンテンツタイプをapplication/jsonに設定し、必要なパラメーター名を使用する限り、問題はありません。

于 2013-03-01T17:00:25.387 に答える