1

Open Bank Project を使用して React-Native アプリを開発していますが、RN で Oauth1.0 を使用できないため、推奨される SDK を使用できません。nodeJS も使用できません。そして、「/oauth/initiate」と「/oauth/authorize」を問題なく渡した後、アクセストークンリクエスト「/oauth/token」でBad Signatureエラーが発生します。

ここのドキュメントで指定されているように、保護されたリソースにアクセスする前に、POST リクエストを介してアクセス トークンが必要です。これにより、Bad Signature の回答が得られます。

リクエストのコードは次のとおりです。

getAccessToken(verifier){
let request = {
  url:    'https://api.openbankproject.com/oauth/token',
  method: 'POST',
  data: {
    oauth_verifier: verifier,
    oauth_token: this.auth.oauth_token,
    oauth_token_secret: this.auth.oauth_token_secret
  }
}
return fetch(this.url_login, {
  method:     request.method, //POST
  form:       request.data,
  headers:    this.oauth.toHeader(this.oauth.authorize(request))
})
.then((res) => {return res.text()})
.then((txt) => {
  console.log('setUID', txt, this.url_login, {
    method:     request.method,
    form:       request.data,
    headers:    this.oauth.toHeader(this.oauth.authorize(request))
  })
})

署名されたリクエストは次のとおりです。

オブジェクト {メソッド: "POST"、フォーム: オブジェクト、ヘッダー: オブジェクト} フォーム: oauth_token:"..." oauth_token_secret:"..." oauth_verifier:"71531"

ヘッダー: 承認: "OAuth oauth_consumer_key="...", oauth_nonce="3UlQ5dx958tibf6lSg0RUGPQFZeV7b8V", oauth_signature="weyE1lFkoIjAErYLKdSi9SDlCZsNBi7%2BuAkLV2PWePo%3D", oauth_signature_method="HMAC-SHA256", oauth_94token="814_4amp4"... "、oauth_token_secret="..."、oauth_verifier="71531"、oauth_version="1.0""

Oauth_token_secret を使用して、または使用せずに試してみました。また、oauth_verifier を本文からクエリに移動しましたが、署名の結果は同じでした。

何か案が?どうも

4

1 に答える 1