Dies ist wahrscheinlich ein sehr einfaches Problem, aber ich bin ziemlich neu zu curl
und habe es nie richtig erklärt. Dies ist das erste Mal, dass ich ein Zugangs-Token über curl
bekommen musste und ich habe noch nie ein Beispiel gesehen. Meine Google-Suche war nicht hilfreich.Google Apps Script und curl
Ich weiß, wie ich die Transaktionsanforderungen machen kann, sobald ich das Zugriffs-Token habe, aber ich kann das Token nicht dazu bringen, zu diesem Schritt weiterzugehen.
Unten ist das api-Dokumentation Beispiel dafür, wie das Token zu erhalten:
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
Wie ich eine URL dieses Aufruf in Google Apps Script
seit UrlFetchApp
erfordert, um meine Aufgabe, aber die URL in diesem Beispiel ist ein Teil der anfordern?
UPDATE
Dies ist eine Probe von meinem Code ist:
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());
}
Die Antwort ist immer die gleiche:
error:"invalid_request",
error_description:"The grant type was not specified in the request"
ich auch versucht:
var dataString = {
"grant_type": "client_credentials",
"scope" : "basic user"
};
Aber die Antwort ändert sich nicht. Was mache ich falsch?
UPDATE 2
ich folgende Änderungen vorgenommen:
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());
}
Nun bekomme ich diesen Fehler:
error:"invalid_client"
error_description:"Client credentials were not found in the headers or body"
Ich schätze den Versuch, aber ich bekomme diesen Fehler: 'Ausnahme: Anmeldeinformationen verboten ' – davids
Tut mir leid. Ich habe es gerade aktualisiert. Es enthielt die grundlegende Authentifizierung für den Header. Versuch es bitte. – Tanaike