我有一些外部数据我正在使用 API 进行调用。数据是WordPress发布我通过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 post 对象在控制台中看起来像这样。这些数据会定期更新新帖子,我希望我正在加载此数据的集合Posts
来反映这一点。
既然我有我的数据,我想将这些帖子添加到名为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 :(得分:0)
您将Meteor方法定义与调用混淆。
文章提取和保存代码:
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);
},
});