2016-12-11 4 views
1

ネイティブとストライプのAPIを初めて使用していて、2つを支払いモジュールに統合しようとしています。だから当初、node.jsのドキュメントとしてコードを使用したとき、React Nativeでは利用できないHTTPモジュールが原因でエラーが発生しています。ネイティブとストライプのインテグレーションに反応する401エラー

通常のStripe実装の代わりにFetch APIを使用した回避策についてこのブログが出てくるまで、しかし、私がコードを実行すると、Unauthorizedを意味する401エラーが表示されるか、キーが無効です。私の実装とキーが正しいことを考えれば、このエラーの原因は何か?サンプルコードは次のとおりです。

fetch('https://api.stripe.com/v1/customers', { 
    method: 'post', 
    headers: { 
    'Accept': 'application/json', 
    'Authorization': 'Bearer MY_TEST_KEY' 
    }, 
    body: JSON.stringify({ 
    firstName: 'John', 
    lastName: 'Doe' 
    }) 
}) 

ありがとうございます!

答えて

1

シークレットAPIキーを必要とするコールでは、モバイルアプリケーションでこれを行うことはできません。シークレットAPIキーをモバイルアプリケーションに使用することは絶対に避けてください。そうしないと、攻撃者が手を握って料金を払い戻したり、払い戻しをすることができます。

あなたがここで行う必要があるのは、モバイルアプリケーションで最初にカードトークンを作成することです。その後、秘密鍵を使用して請求または顧客を作成するサーバーに送信します。

+0

実際に私はAPIをテストしていますが、後でそれをやっていきますが、今は最初にどのように動作するのかを見てみたいので、私の秘密鍵をコードに入れているのですか、不正なエラー? – Jed

+0

@Jed:私が言っているのは、アプリケーションでStripe-nodeライブラリを取得できないため、試してはいけないということです。代わりに、webviewでStripe.jsを使用する必要があります:https://stripe.com/docs/stripe.js – koopajah

関連する問題