我有一个与Rails BE的SPA React应用程序。我使用https://github.com/anthonyjgrove/react-google-login离线生成accessstype的code
。这成功地生成了一个代码,我可以得到它。
现在我试图使用此代码使用POSTMAN
向https://oauth2.googleapis.com/token发出POST请求curl --location --request POST 'https://oauth2.googleapis.com/token'
--header 'Content-Type: application/x-www-form-urlencoded'
--data-urlencode 'code=4/0AX4XfWhUc8IC12kr1115g71111'
--data-urlencode 'redirect_uri=urn:ief:wg:oauth:2.0:oob'
--data-urlencode 'client_id=x.apps.googleusercontent.com'
--data-urlencode 'client_secret=secret'
--data-urlencode 'scope='
--data-urlencode 'grant_type=authorization_code'
就使用https://developers.google.com/oauthplayground而言,这看起来是正确的。
然而,当我尝试通过curl或HttParty发出请求时,它失败了。我不确定这是否正在发生,因为我正在从SPA应用程序获取代码,然后使用我的a BE应用程序来发出其他请求。
[编辑]我应该提到我尝试了多个不同的redirect_uri。localhost: 3000 3003 .
解决方案是从SPA应用程序进行令牌API调用。我能够发出成功的请求。
我需要重新考虑如何组织和打电话。