我和我的团队最近为我们的客户开发了chrome扩展程序。我们希望此chrome扩展程序能够将POST请求发送到客户端的API。
客户端使用google用户令牌验证来验证请求的内容。 (https://packagist.org/packages/google/apiclient)
请求包含两个重要字段:令牌和电子邮件。
使用identity.getAuthToken()
和identity.getProfileUserInfo()
获得令牌和电子邮件。
清单中“ oauth2”字段的内容为
"oauth2": {
"client_id": "OUR_CLIENT_ID.apps.googleusercontent.com",
"scopes": [
"email"
]
}
现在,获取的令牌无法通过api进行验证,我们不知道如何在chrome扩展中创建能够验证的令牌。
另一个团队的另一个项目能够使用类似以下内容从网络生成令牌:
{"web":{"client_id":"CLIENT_ID.apps.googleusercontent.com","project_id":"PROJECT_NAME","auth_uri":"https://accounts.google.com/o/oauth2/auth","token_uri":"https://accounts.google.com/o/oauth2/token","auth_provider_x509_cert_url":"https://www.googleapis.com/oauth2/v1/certs","client_secret":"SOME_SECRET","javascript_origins":["SOME_URL"]}}
我们试图使用从与API相同的项目中生成的CLIENT_ID,但是它不起作用。
我们还可以注意到,另一个团队从网络生成的有效令牌要更长一些。
我们如何获得令牌:
chrome.identity.getAuthToken({ interactive: true }, (token) => {
if (chrome.runtime.lastError) {
return
}
return token
})
我们在清单中的权限:
"permissions": [
"identity",
"identity.email",
"notifications",
"https://*/*",
"http://*/*"
]
我们想知道是否有可能在chorme扩展中生成与客户端库一起使用的令牌。
如果不可能,我们想知道是否有可能从为此目的开发的可能的API中生成工作令牌。
非常感谢您。