2017-10-14 110 views
0

我有一些外部数据我从调用API。数据是我通过WordPress API获取的WordPress帖子对象。将外部反应API数据插入流星集合

我使用的是HTTP包,我的代码如下所示。

server.js

const articleIncoming = HTTP.call('GET', 'http://myUrl/wp-json/wp/v2/posts', {}, function(error, articleIncoming) { 
    if (error) { 
    console.log(error); 
    } else { 
    console.log(articleIncoming); 
}); 

哪里articleComing是响应。一个WordPress 对象在控制台中看起来像这样。这些数据会定期更新,并且我希望收集这些数据的收集Posts,以反映这一点。现在

enter image description here

,我有我的数据,我想这些职位添加到一个名为Posts集合,但我有困难。

server.js

const articleIncoming = HTTP.call('GET', 'http://myUrl/wp-json/wp/v2/posts', {}, function(error, articleIncoming) { 
    if (error) { 
    console.log(error); 
    } else { 
    console.log(articleIncoming); 
}); 

Meteor.methods({ 
    'Posts.insert'(articleIncoming) { 
    return Posts.insert({ 
     articleIncoming, 

    }); 
    }, 
}); 
  • 我如何保存不断更新 WordPress的帖子到 集合,在某种程度上更新当一个新的职位发表在 WordPress的?

  • 无需后期重复

回答

0

你混淆了流星方法的定义与调用。

文章取&节省代码:

HTTP.get('http://myUrl/wp-json/wp/v2/posts', (error, articleIncoming) => { 
    if (error) { 
    console.log(error); 
    } else { 
    Meteor.call('Posts.insert', articleIncoming, (err, postId) => { 
     if (err) { 
     // handle error 
     } 
    }); 
    } 
}); 

别的地方:

Meteor.methods({ 
    'Posts.insert'(articleIncoming) { 
    // prevent duplications, based in article's `id` field 
    const _id = `article_${articleIncoming.id}`; 
    return Posts.upsert({ _id }, articleIncoming); 
    }, 
});