2017-10-14 66 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); 
    }, 
});