Wie können wir eine solche HTTP-Anfrage in NodeJS stellen? Beispiel oder Modul geschätzt.
curl https://www.googleapis.com/urlshortener/v1/url \
-H 'Content-Type: application/json' \
-d '{"longUrl": "http://www.google.com/"}'
Das Anforderungsmodul von Mikeal kann dies auf einfache Weise tun:
var request = require('request');
var options = {
uri: 'https://www.googleapis.com/urlshortener/v1/url',
method: 'POST',
json: {
"longUrl": "http://www.google.com/"
}
};
request(options, function (error, response, body) {
if (!error && response.statusCode == 200) {
console.log(body.id) // Print the shortened url.
}
});
headers: {'content-type' : 'application/json'},
Option hinzugefügt habe .Einfaches Beispiel
quelle
Wie die offizielle Dokumentation sagt:
Wenn Sie JSON senden, müssen Sie es nur in den Hauptteil der Option einfügen.
quelle
Aus irgendeinem Grund hat heute nur das für mich funktioniert. Alle anderen Varianten hatten einen schlechten JSON- Fehler von der API.
Außerdem eine weitere Variante zum Erstellen der erforderlichen POST-Anforderung mit JSON-Nutzdaten.
quelle
Anfrage mit Headern und Post verwenden.
quelle
Da das
request
Modul, das andere Antworten verwenden, veraltet ist, kann ich vorschlagen, zu Folgendem zu wechselnnode-fetch
:quelle