如何将PHP get查询转换为Meteor';s HTTP.get()


How to convert PHP get query to Meteor's HTTP.get()?

我有一个从API检索数据的示例php查询:

$http = new Client();
 $response = $http->get('https://connection.toserver.com', [ 'GetRequest' => [
                      'identifier'  => '123',
                      'identifierType' => 'code',
                     'language' => 'eng',
                     'maxCount' => 1,
                     'contain' => ['name', 'lastname', 'age']
               ] 
            ], 
           [
           'headers' => [
                'API-LANGUAGE' => 'eng',
               'API-CALL-NAME' => 'Get', 
               'API-AUTH-TOKEN'  => 'somerandomtoken']
 ]
 );

如何使用HTTP包从Meteor服务器端函数发出相同的请求?我的最后一次尝试是这样的:

Meteor.methods({
getItemByEAN: function(code) {
    check(code, String);
    this.unblock();
    var x = HTTP.get(url,
      {headers:{
         "API-LANGUAGE": "eng",
         "API-CALL-NAME": "Get",
         "API-AUTH-TOKEN": "somerandomtoken"
          },
        data: {
          identifier: code,
          identifierType: 'code',
          language: 'eng',
          maxCount: 1,
          contain: ['name', 'lastname', 'age']
         }
     });
     return(x);
    }
});

此代码导致服务器错误"ReferenceError:数据未定义"我正在使用流星文档(http://docs.meteor.com/#/full/http_call)作为参考,但迄今为止没有成功。

提前感谢

编辑:我已经更新了当前的流星示例,以显示完整的meteor.methods()部分

我不知道您的服务器期望什么,但我看到的一个区别是,在php中,您将数据封装在"GetRequest"对象中。你试过这个吗:

HTTP.get(url,
  {headers:{
     "API-LANGUAGE": "eng",
     "API-CALL-NAME": "Get",
     "API-AUTH-TOKEN": "somerandomtoken"
      },
    data: { GetRequest: {
       identifier: 123,
      identifierType: 'code',
      language: 'eng',
      maxCount: 1,
      contain: ['name', 'lastname', 'age']
    }}
});