Hallo, mein Problem ist eher eine Frage, ich versuche, Axios dazu zu bringen, eine POST-Anfrage zu senden, die dasselbe tut wie diese Locke:
curl -v https://api.sandbox.paypal.com/v1/oauth2/token \
-H "Accept: application/json" \
-H "Accept-Language: en_US" \
-u "EOJ2S-Z6OoN_le_KS1d75wsZ6y0SFdVsY9183IvxFyZp:EClusMEUk8e9ihI7ZdVLF5cZ6y0SFdVsY9183IvxFyZp" \
-d "grant_type=client_credentials"
mein Code ist dieser:
var instance = axios.create({
baseURL: 'https://api.sandbox.paypal.com/v1/oauth2/',
timeout: 1000,
method: 'post',
headers: {
'Accept': 'application/json',
'Accept-Language': 'en_US',
'content-type': 'application/x-www-form-urlencoded',
'EOJ2S-Z6OoN_le_KS1d75wsZ6y0SFdVsY9183IvxFyZp':'EClusMEUk8e9ihI7ZdVLF5cZ6y0SFdVsY9183IvxFyZp'
},
data: {
"grant_type": "client_credentials",
},
});
instance.post('/token')
.then(function(response){
console.log(response.data); // ex.: { user: 'Your User'}
console.log(response.status); // ex.: 200
});
Ich rufe es von meinem localhost auf und es gibt mir den Fehler 401. Dies ist der Link zur PAYPAL-API https://developer.paypal.com/docs/integration/direct/make-your-first-call/
Beim Durchlesen der Dokumente konnte ich nicht verstehen, wo ich den Benutzernamen und das Passwort ablegen oder die Autorisierung auf basicOuth einrichten sollte
instance.defaults.headers.common['Authorization'] = AUTH_TOKEN;
Was ist AUTH_TOKEN? ist ein const? welchen Wert soll ich dem geben?
Danke jedenfalls im Voraus.
Sie müssen sich mit Benutzername und Kennwort unter Verwendung der Standardauthentifizierung authentifizieren. Außerdem senden Sie JSON mit dieser Anfrage und die curl-Version verwendet "application/x-www-form-urlencoded". Bitte lesen Sie die Dokumentation:
@Spartano Du hast das Problem gelöst? Ich versuche dasselbe zu tun und gebe mir auch eine 401 und diese Meldung "Authentifizierung aufgrund ungültiger Authentifizierungsdaten oder eines fehlenden Autorisierungsheaders fehlgeschlagen".
Mein Code hier:
axios.post('https://api.sandbox.paypal.com/v1/oauth2/token', querystring.stringify({
grant_type: 'client_credentials',
withCredentials: true,
headers:{
'Accept': 'application/json',
'Accept-Language': 'en_US',
'Content-Type': 'application/x-www-form-urlencoded',
},
auth: {
username: 'ClientID',
password: 'Secret'
}
})).then((response) => {
console.log(response);
}).catch((err) => {console.log(err);});
Ich habe es gelöst! Ich habe einen Gist erstellt, um zu zeigen, wie ich es gelöst habe, wenn jemand Hilfe braucht: https://gist.github.com/TigaxMT/b57c11df3e4ebd0510858ec3df775efa
Hilfreichster Kommentar
Ich habe es gelöst! Ich habe einen Gist erstellt, um zu zeigen, wie ich es gelöst habe, wenn jemand Hilfe braucht: https://gist.github.com/TigaxMT/b57c11df3e4ebd0510858ec3df775efa