Meteor.http.get始终返回错误

时间:2014-06-08 21:35:01

标签: meteor http-headers

我正在尝试http.get,它总是从服务器返回错误。同样的网址使用postman和chrome成功回答。 我是Meteor的新手。

Meteor.setInterval(function () {
    var url = "http://dadosabertos.rio.rj.gov.br/apiTransporte/apresentacao/rest/index.cfm/obterPosicoesDaLinha/217";

    HTTP.get(url, {timeout:30000}, function (error, result) {
        console.log(error);
        if (!error) {
            console.log(respose.statusCode, result.data); 
        }
    });
}, 60000);

I20140608-18:26:28.512(-3)? { [Error: failed [400]]
I20140608-18:26:28.513(-3)?   response: 
I20140608-18:26:28.513(-3)?    { statusCode: 400,
I20140608-18:26:28.513(-3)?      content: '',
I20140608-18:26:28.513(-3)?      headers: 
I20140608-18:26:28.513(-3)?       { date: 'Sun, 08 Jun 2014 21:26:29 GMT',
I20140608-18:26:28.514(-3)?         server: 'Apache',
I20140608-18:26:28.514(-3)?         vary: 'Accept-Encoding',
I20140608-18:26:28.514(-3)?         'access-control-allow-origin': '*',
I20140608-18:26:28.514(-3)?         connection: 'close',
I20140608-18:26:28.514(-3)?         'transfer-encoding': 'chunked',
I20140608-18:26:28.514(-3)?         'content-type': 'text/html; charset=iso-8859-1' },
I20140608-18:26:28.515(-3)?      data: null } }

2 个答案:

答案 0 :(得分:0)

也许您正在查看过时的文档或其他内容,但我相信当前在Meteor中使用HTTP GET的方法是使用HTTP.gethttp://docs.meteor.com/#http_get)。

答案 1 :(得分:0)

经过大量的谷歌搜索后,我决定从成功的get中测试http标头。实时HTTP标头是获取标头值的工具。

完整的标题使事情变得更好,我得到了200但有些胡言乱语的数据。

最终测试和解决方案是 {headers:{接受:' / '}} 作为选项值。

HTTP/1.1 specification状态开始,我收到数据的服务器似乎出错:"如果没有Accept标头字段,则假定客户端接受所有媒体类型&# 34 ;.

HTTP.get(url, [options], [asyncCallback])