【发布时间】:2020-08-10 04:27:43
【问题描述】:
我正在尝试通过 OneLogin 的 API 生成 OAuth 2.0 令牌。我通读了他们的documentation,并能够设置 Postman 进行测试,并成功获取访问令牌。
但是,当我尝试通过 JavaScript fetch 以编程方式执行相同的请求时,它不起作用。
代码:
function getAuthToken() {
// POST Request (To get Access Token)
var url = 'https://api.us.onelogin.com/auth/oauth2/v2/token?grant_type=client_credentials'
var postOptions = {
'method': 'POST',
'headers': {
'Content-Type': 'application/json; charset=utf-8',
'Authorization' : 'client_id:xxxx, client_secret:xxxx'
},
'redirect': 'follow'
};
var authToken = UrlFetchApp.fetch(url, postOptions);
}
错误
错误消息表明 grant_type 丢失,但我将 POST 请求正文中的 grant_type 参数作为字符串(原始)传递,如文档需要,我仍然收到错误。我什至尝试将'{"grant_type": "client_credentials"}' 与“body”参数内联,但仍然收到相同的错误消息。
有什么想法吗?提前谢谢!
【问题讨论】:
标签: api google-apps-script oauth-2.0 access-token onelogin