2015-06-14 106 views
0

我在玩meteor的一些API,并试图使用HTTP包来访问它。他们给出的示例将请求格式化为这样的Curl命令:流星HTTP请求结构化

curl -X POST https://api.locu.com/v2/venue/search/ -d '{"fields":["name","menu_items","location","categories","description"],"menu_item_queries":[{"price":{"$ge":15},"name":"steak"}],"venue_queries":[{"location":{"locality":"San Francisco"}}],"api_key":"YOUR_API_KEY"}' 

如何将其转换为HTTP.call()?我是否使用了我在文档中列出的数据参数? PARAMS?内容?到目前为止我尝试过的变化都没有奏效。

回答

0

这是等价的。这在javascript中有点漂亮。

服务器端代码:

var result = HTTP.post("https://api.locu.com/v2/venue/search", { 
    data: { 
     "fields": ["name", "menu_items", "location", "categories", "description"], 
     "menu_item_queries": [{ 
      "price": { 
       "$ge": 15 
      }, 
      "name": "steak" 
     }], 
     "venue_queries": [{ 
      "location": { 
       "locality": "San Francisco" 
      } 
     }], 
     "api_key": "YOUR_API_KEY" 
    } 
}); 

console.log(result.data); // 
console.log(result.content); //.data is better if the output is in json 

如果您使用的客户端代码,它不建议由于API密钥,你将不得不使用回调来代替。

+0

在未来,你不应该回答没有说​​他们已经尝试过的问题。我们不想为他们做人的“功课”。 – xaxxon

+1

@xaxxon似乎有点不公平。大多数流星用户都在学习。我怀疑他/他确实尝试了数据,但是将其作为字符串而不是对象传递。流星对物体本身做得更好。 – Akshat

+0

这不仅仅是我的意见:http://stackoverflow.com/tour - 不要问:你还没有试图找到答案的问题(显示你的工作!)“我到目前为止试过的变化避难所没有工作“没有显示你的工作。 – xaxxon