derzeit versuche ich die https.get-Funktion zu verwenden, um Tokens abzurufen sowie allgemeine API-Aufrufe an Yahoo. Ich scheine in der Lage zu sein, es zum Funktionieren zu bringen, wenn ich eine lange Abfragezeichenkette baue und sie in die URL hinzufüge, die ganze URL-Zeichenkette als das erste Argument übergebend.Constructing Nodejs HTTPS Get Payload
var finalUrl = host + path + "?" + paramString;
return new Promise(function(resolve, reject) {
var data = {
"error_str": "",
"errno": 0,
"return_code": 0,
"contents": ""
}
console.log("In promise function");
console.log("finalUrl: " + finalUrl);
var options = {
"host": host,
"path": path,
"headers": params,
"timeout": 2
};
console.log("options: " + JSON.stringify(options));
https.get(finalUrl, (res) => {
// resolves
aber wenn ich versuche, https.get mit den Optionen Objekt, so kann ich das Timeout für mehr datenintensive Anrufe einzustellen, scheitert es
https.get(options, (res) => {
// rejects
die endgültigen URL Erträge Drucken:
finalUrl:
Inzwischen, wenn ich Optionen konstruieren sieht es aus wie dieses
{
"host":"https://api.login.yahoo.com",
"path":"/oauth/v2/get_request_token",
"headers":{
"xoauth_lang_pref":"en-us",
"oauth_callback": "oob", `
"oauth_consumer_key":"my_consumer_key",`
"oauth_nonce":334283,
"oauth_signature_method":"PLAINTEXT",
"oauth_timestamp":1514728974491,
"oauth_version":"1.0",
"oauth_signature":"my_consumer_secret&"
},
"timeout":2
}
jedoch eine mit dieser Nutzlast Ausbeuten
Getaddrinfo ENOTFOUND https://api.login.yahoo.comhttps://api.login.yahoo.com:443