Meteor HTTP 调用的问题

Troubles with Meteor HTTP calls

我是 Meteor 的新手,在尝试发出 HTTP GET 请求时遇到问题。我正在关注一个关于 HTTP 请求的教程,我几乎一直关注它到 T 但是当我导航到该页面时似乎没有显示任何内容。我已经添加了 Meteor HTTP,但我的 client.js 文件中的功能似乎仍然没有触发。当我使用浏览器导航到 NYT 时,我可以看到 JSON,但我的页面上没有任何内容。

在我的客户端文件夹中,这是我的 home.html:

<template name="home">
<div class="page-header">
<h1>Home</h1>
You are home!
<select class="news">
  <option>sports</option>
  <option>politics</option>
  <option>business</option>
</select>
  <h1>news:<small>{{currentnews}}</small></h1>
</div>
</template>

这是home.js:

Template.layout.currentnews = function(){
var news = Session.get('news');
Meteor.call('getNews',news,function(err, results){
console.log(results.content);
console.log('hello from currentnews function');
Session.set('news', JSON.parse(results.content));
});
return Session.get('news');
};

最后这里是服务器文件夹中的server.js:

Meteor.methods({
'getNews':function(subject){
return Meteor.http.call('GET', 'http://api.nytimes.com/svc/search/v2/articlesearch.json?callback=svc_search_v2_articlesearch&q='+subject+'&begin_date=20150402&end_date=20150402&sort=newest&api-key=[apikeyhere]');
}
})

您确定您的模板名称正确吗?你的例子对我来说意义不大。

Template.layout.currentnews 看起来不对....

你的模板叫家?

尝试将您的代码放入

Template.home.rendered = function(){
        Meteor.call('getNews',news,function(err, results){
        console.log(results.content);
        console.log('hello from currentnews function');
        Session.set('news', JSON.parse(results.content));
        });
  };


Template.home.helpers({
    currentnews: function()
    {
      return Session.get('news');     
    }
});

您可能需要修复关闭问题。