【发布时间】:2015-09-23 19:13:36
【问题描述】:
已经发布了类似的问题,但没有一个完全符合我遇到的问题。我正在对内部服务器进行简单的 POST 以获取产品数据。调用成功,当我在服务器端执行 console.log 时,我看到 JSON 数据正确记录到我的终端。问题出现在客户端,在回调中,结果和错误都未定义。
服务器:
Meteor.methods({
ProductSearch: function(searchTerm) {
var method = 'POST';
var url = 'server';
var options = {
headers:{"content-type":"application/json"},
data: {
query:"trees"
}
};
return HTTP.call(method, url, options, function (error, result) {
if (error) {
console.log("ERROR: ", result.statusCode, result.content);
} else {
var txt = JSON.parse(result.content);
console.log("SUCCESS: Found "+txt.totalResults+" products");
}
});
}
});
客户:
Meteor.call('ProductSearch', searchTerm, function (error, result) {
if (error) {
console.log("error occured on receiving data on server. ", error );
} else {
var respJson = JSON.parse(result.content);
Session.set("productSearchResults", respJson);
}
});
当我在回调中记录 error 和 result 的值时,它们都是未定义的,并且我收到以下错误:在传递结果时出现异常调用“ProductSearch”:TypeError:无法读取未定义的属性“内容”
【问题讨论】:
标签: javascript meteor