在 Meteor.js 中获得响应 headers

Get Response headers in Meteor.js

情况

从我的 Meteor.js 网站调用我自己的 REST 服务。这是我服务器端的代码示例

function (question) {   
    var r = Async.runSync(function (done) {
        HTTP.get(URL, {
            params: {q: question}, headers: {
                "Accept": "application/json",
            }
        }, function (err, result) {
            done(err, result);
        });
    });
    if (r.err) {
        console.log("Failed to smartSearch ... ", r.err);
        return null;
    } else if (r.result.content) {
        console.log("Success ... ");
        return JSON.parse(r.result.content);
    }
}

这很好用,但在 响应 headers 中也有一些我找不到的重要信息。

到目前为止我尝试了什么

但还是没看到我的回复headers。

附加信息

我是 Meteor.js 的新手,所以我真的不知道我可能做错了什么,但得到回应 headers 对我来说并不奇怪。

不需要将请求包装为异步调用,因为它已经如此。

您可以使用 try..catch 块来处理成功和失败的请求。

try {
  var result = HTTP.get(...);
  var responseHeaders = result.headers;
} catch (e) {
  // handle error
}

如果响应 headers 表示 JSON 响应,它将被解析并作为 result.data 提供。响应将以 result.content.

中的字符串形式提供

HTTP package API docs 中提供了更多详细信息。