• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:mixiアプリモバイルOAuth Signatur)

mixiアプリモバイルOAuth Signatureの検証方法とは?

このQ&Aのポイント
  • mixiアプリモバイルにおいてgpsから位置情報を取得した際のOAuth Signatureの検証方法について教えてください。
  • mixi Developer Centerの記述サンプルに従い、指定のURLをリンクに設定しましたが、OAuth Signatureの検証に失敗しています。
  • gpsからのコールバック時にoauth_signatureと生成したsignature値が一致しない問題が発生しています。詳しい方にアドバイスをお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • nobuoka
  • ベストアンサー率69% (23/33)
回答No.1

> 現在、gpsからのコールバックでなければ、 > oauth_signatureと生成したsignature値が一致するので、 ということなので、ひとつの可能性を。 [1] を見たところ、lat と lon には "+" または "-" の記号が含まれているようですが、この記号はちゃんと処理されているでしょうか。 例えば、受け取った query 文字列はパーセントエンコードされている状態ですので、出コードする必要があります。 また、OAuth のシグニチャを生成する前にパラメータをまとめて文字列を生成しますが、そのときには OAuth の仕様にそった形でパーセントエンコードしなければいけません。 もし、既にちゃんとされているのでしたらすみません。 [1] http://developer.mixi.co.jp/appli/spec/mob/get_gps_info/

oyaji111
質問者

お礼

ありがとうございました。 mixi側からくるoauth_signatureの値ですが、 urlエンコードされたパラメータで、oauth_signatureを作成しているみたいです。 (多分なのですが。) ですので、SAPサーバ側では、urlエンコードされたパラメータで、signatureを作成しないと いけないようなのですが、HttpServletRequest.getParameter(パラメータ名) でデコードした値でsignatureを作成していたため、 lat と lon の パラメータ値が、+になり、 それが原因正しくsignatureが生成されなかったようです。 おかげで、なんとかできました。 ありがとうございました。

関連するQ&A