我需要使用Google Play Android API,我需要遵循很多说明才能与该API连接,但我只能一并使用。(Authorization documentation) 他们说的正是步骤4:
使用以下代码发送帖子:
grant_type=authorization_code
code=<the code from the previous step>
client_id=<the client ID token created in the APIs Console>
client_secret=<the client secret corresponding to the client ID>
redirect_uri=<the URI registered with the client ID>`
我指定我使用无服务器和节点,请问如何在https://accounts.google.com/o/oauth2/token
中使用刷新令牌?
非常感谢我的英语^^。
很抱歉,我的服务器没有服务
#serverless.yml
service: scrapper-app
provider:
name: aws
runtime: nodejs8.10
region: eu-west-3
functions:
app:
handler: index.handler
events:
- http: ANY /
- http: 'ANY {proxy+}'
和我的js也一样:
//index.js
const serverless = require('serverless-http');
const express = require('express')
const app = express()
//API
const { google } = require('googleapis');
const oauth2Client = new google.auth.OAuth2(
IDCLient,
Secret,
'https://accounts.google.com/o/oauth2/auth',
);
const scopes = 'https://www.googleapis.com/auth/androidpublisher';
const url = oauth2Client.generateAuthUrl({
access_type: 'offline',
scope: scopes
)}
// GET
app.get('/', function (req, res) {
res.send('Scrapper Rs!');
})
module.exports.handler = serverless(app);
我真的不知道如何使用节点和无服务器进行http发布,我成功地使用了数据库(带有curl),但未发布到url。
答案 0 :(得分:1)
我没有使用Google身份验证。但我认为您需要使用access_type = offline
access_type 推荐 。指示您的应用程序是否可以 当用户不在浏览器中时刷新访问令牌。 有效的参数值是在线的,这是默认值,并且 离线。</ p>
如果您的应用程序需要刷新访问权限,则将该值设置为offline 用户不在浏览器中时标记。这是方法 本文档后面部分将介绍的刷新访问令牌的过程。这个 值指示Google授权服务器返回刷新 令牌和访问令牌在您的应用程序首次出现时 交换令牌的授权码。
要在PHP中设置此值,请调用setAccessType函数:
$ client-> setAccessType('offline');
来源:https://developers.google.com/identity/protocols/OAuth2WebServer