在 Meteor.js 中获取响应标头

Get Response headers in Meteor.js

本文关键字:响应 获取 Meteor js      更新时间:2023-09-26

>情况

在我的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);
    }
}

这很好用,但响应标头中也有一些我找不到的关键信息。

到目前为止我尝试过什么

  • 我查看了 r.result.content 中的所有内容,但这只包含我的请求标头。

  • 我已经安装了 https://atmospherejs.com/gadicohen/headers 并尝试了网站所说的一切。

但仍然没有看到我的响应标题。

附加信息

我对 Meteor 相当陌生.js所以我真的不知道我可能做错了什么,但获得响应标头对我来说并不奇怪。

没有必要将请求包装为异步调用,因为它已经存在。

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

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

如果响应标头指示JSON响应,则它将被解析并作为result.data提供。响应将以字符串形式提供 result.content

有关更多详细信息,请参阅 HTTP 包 API 文档。