0
這可能是一個非常簡單的問題,但我對curl
很新,並且從來沒有正確解釋它。這是我第一次必須通過curl
獲得訪問令牌,我從未見過一個例子。我的谷歌搜索沒有幫助。Google Apps腳本和捲曲
我知道如何在擁有訪問令牌後創建事務請求,但無法獲取令牌以轉到該步驟。
下面是如何獲得令牌的API文檔例如:
curl -X POST -u <API USERNAME>:<API SECRET KEY> https://api.neverbounce.com/v3/access_token\
-d grant_type=client_credentials\
-d scope=basic+user
我怎麼撥打這個電話在Google Apps Script
因爲UrlFetchApp
需要一個網址,但在這個例子中,URL是部分請求?
UPDATE
這是我的代碼示例:
function NBpost() {
var dataString = 'grant_type=client_credentials&scope=basic+user';
var url = "https://api.neverbounce.com/v3/access_token";
var options =
{
"method" : "post",
"auth": {
'user': <USERNAME>,
'pass': <SECRET KEY>,
},
body : dataString,
"muteHttpExceptions" : true
};
var response = JSON.parse(UrlFetchApp.fetch(url, options).getContentText());
}
的響應總是相同的:
error:"invalid_request",
error_description:"The grant type was not specified in the request"
我也有嘗試:
var dataString = {
"grant_type": "client_credentials",
"scope" : "basic user"
};
但是迴應沒有改變。我究竟做錯了什麼?
更新2
我做了以下修改:
function myFunction(){
var url ='https://api.neverbounce.com/v3/access_token';
var options = {
method: "post",
u: {
<USERNAME> : <SECRET KEY>
},
payload: {
"grant_type": "client_credentials",
"scope": "basic user"
},
muteHttpExceptions: true
};
var response = JSON.parse(UrlFetchApp.fetch(url, options).getContentText());
}
現在,我得到這個錯誤:
error:"invalid_client"
error_description:"Client credentials were not found in the headers or body"
我很欣賞這種嘗試,但我得到這個錯誤:'例外:登錄信息不允許' – davids
對不起。我剛纔更新了它。它包括對標題的基本認證。請嘗試。 – Tanaike