【发布时间】:2017-03-30 15:09:33
【问题描述】:
我想将从文件中读取的 JSON 对象传递给 POST api。但是,我看到从文件中读取它时它不起作用。然而,当硬编码的 JSON 数据被传递时,它正在工作。为了让您更好地理解,我给出以下代码示例:
var json_content = {};
fs.readfile(file, function(err, data) {
json_content = data;
console.log("typeof json_variable = "+ typeof json_content + "| json_content ="+json_content);
if(err) {
console.log("file reading error is = "+err);
return;
}
}
上述console.log语句的输出如下:
json_variable= 对象的类型| json_content = {'title' : 'adventure', 'name': 'Homes'}
当我使用 superagent 将上面的 json_content 作为正文发送到我的 post call 时,它不起作用。事实上,如果我做 req.body.title,它会在服务器中接收为未定义
但是,如果我将 json_content 变量设置为硬编码值,而不是从文件中读取并发送的上述机制,那么它可以正常工作。下面是代码和输出:
json_content = {'title' : 'adventure', 'name': 'Homes'};
console.log("typeof json_variable = "+ typeof json_content + "| json_content ="+json_content);
这次的输出不同如下:
typeof json_variable = object |json_content =[object Object]
请注意输出的差异,因为 json_content 现在打印为 [object Object],这与之前打印整个 JSON 的情况不同。
您能否建议,当我从文件中读取第一种方法并将其发送到 post 以获得与硬编码 json 时所获得的类似效果时,我需要如何更改第一种方法?
【问题讨论】:
标签: javascript json