【问题标题】:nodejs Add result to variablenodejs将结果添加到变量
【发布时间】:2018-11-13 16:25:44
【问题描述】:

抱歉,我对nodejs不熟悉。

在 httpsGet 的第一部分,我有以下行在 myResult 中给出了结果。

httpsGet(myRequest,  (myResult) => {

});

然后如何将其添加到以下代码中并将其附加到变量元数据的“标题”部分?

var metadata = { 
    title: "Title",
    subtitle: "Subtitle"
};

我已经尝试了显而易见的方法:

var metadata = { 
    title: "Title" + myResult,
    subtitle: "Subtitle"
};

但这不起作用。

谢谢。

更新(包括 httpsGet 功能)

var myRequest = 'ThisData';
var https = require('https');

function httpsGet(myData, callback) {
    var options = {
        host: 'www.example.com',
        port: 443,
        path: '/path_to.json',
        method: 'GET',
    };

    var req = https.request(options, res => {
        res.setEncoding('utf8');
        var returnData = "";

        res.on('data', chunk => {
            returnData = returnData + chunk;
        });

        res.on('end', () => {
            var pop = JSON.parse(returnData).data;
            callback(pop);  
        });
    });
    req.end();
}

我的 .json 文件响应:

{
  "Name": "ThisData",
  "data": "this is the data I want to append to Title"
}

【问题讨论】:

    标签: node.js var


    【解决方案1】:

    我希望您将 myResult 附加到回调函数范围内。理想情况下,您的代码应如下所示:

    var metadata = { 
        title: "Title",
        subtitle: "Subtitle"
    };
    
    httpsGet(myRequest, (myResult) => {
        metadata = { 
            title: "Title" + myResult,
            subtitle: "Subtitle"
        };
    });
    

    如果您是 node js 的新手,请尝试探索 nodejs 中的回调和异步函数。我希望你会这样:)

    【讨论】:

    • 感谢您抽出宝贵时间回复。这不起作用,我用更多代码更新了我的问题。谢谢。
    【解决方案2】:

    您好,我不确定您的代码,但为了从回调中访问任何内容,您可以将其作为 JSON 对象访问,因此在您的情况下

    var 元数据 = { 标题:myResult.Title, 副标题:“副标题” };

    应该可以。每当您处理此类事情时,最好先使用 console.log 数据(即 console.log(JSON.stringify(myResult)) 并验证所有预期参数。

    【讨论】:

    • 感谢您抽出宝贵时间回复。这不起作用,我用更多代码更新了我的问题。我应该已经从 json 文件中提取了值。谢谢。
    • 很抱歉,请您现在详细说明您的错误,我迷失了这个问题。
    • 我想将 .json 文件中的文本“这是我要附加到 Title 的数据”附加到变量(元数据)中,如下所示 var metadata = { title: "Title" + myResult, subtitle: "Subtitle" }; 我没有收到任何错误,它只是不起作用,没有添加 .json 文件的内容,因为我不知道该怎么做。谢谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多