【发布时间】:2017-05-14 12:39:37
【问题描述】:
所以我要做的是使用标准 HTTP 包在 Meteor 服务器端解析 this 基于 XML 的 RSS 提要。令人困惑的是,如果从服务器调用我会收到一个空内容作为响应,但是如果我从客户端调用相同的端点,那么我会收到一个正常的 XML 内容。我尝试使用 Meteor.call 从客户端调用服务器方法,也尝试使用流星外壳调用它。结果一样
这是 Meteor 方法:
readRssFeed: function() {
try {
HTTP.get("http://agenda.regiolive.ch/feed/", {}, function(error, response) {
console.log(response)
//parse xml
});
} catch (error) {
console.log(error);
}
},
回复是:
I20170514-15:20:06.474(3)? { statusCode: 200,
I20170514-15:20:06.474(3)? content: '',
I20170514-15:20:06.474(3)? headers:
I20170514-15:20:06.474(3)? { date: 'Sun, 14 May 2017 12:12:04 GMT',
I20170514-15:20:06.474(3)? server: 'Apache-Coyote/1.1',
I20170514-15:20:06.474(3)? 'access-control-allow-origin': '*',
I20170514-15:20:06.474(3)? 'content-type': 'application/xml;charset=UTF-8',
I20170514-15:20:06.474(3)? 'content-length': '0',
I20170514-15:20:06.474(3)? 'set-cookie':
I20170514-15:20:06.474(3)? [ 'cfid=9d25f146-1fca-42d2-927e-88fb9e458bfa;Path=/;Expires=Mon, 13-May-2047 20:03:34 GMT;HTTPOnly',
I20170514-15:20:06.475(3)? 'cftoken=0;Path=/;Expires=Mon, 13-May-2047 20:03:34 GMT;HTTPOnly',
I20170514-15:20:06.475(3)? 'CF_CLIENT_AGENDA_REGIOLIVE_CH1104_LV=1494764405749;Path=/;Expires=Wed, 24-May-2017 12:20:06 GMT',
I20170514-15:20:06.475(3)? 'CF_CLIENT_AGENDA_REGIOLIVE_CH1104_TC=1494764405749;Path=/;Expires=Wed, 24-May-2017 12:20:06 GMT',
I20170514-15:20:06.475(3)? 'CF_CLIENT_AGENDA_REGIOLIVE_CH1104_HC=2;Path=/;Expires=Wed, 24-May-2017 12:20:06 GMT' ],
I20170514-15:20:06.475(3)? 'keep-alive': 'timeout=5, max=100',
I20170514-15:20:06.475(3)? connection: 'Keep-Alive' },
I20170514-15:20:06.475(3)? data: null }
如果我在客户端执行相同的代码,我会收到带有 XML 内容的预期响应
{
"statusCode": 200,
"content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<feed xmlns=\"http://www.w3.org/2005/Atom\"\nxmlns:ev=\"http://purl.org/rss/1.0/modules/event/\"\nxmlns:geo=\"http://www.w3.org/2003/01/g.....>,
"headers": {
"content-type": "application/xml;charset=UTF-8"
},
"data": null
}
我还尝试使用 Node.js 样式的 HTTP 请求。结果一样
【问题讨论】:
标签: javascript node.js xml meteor xmlhttprequest