【问题标题】:Having issues getting page title from html with meteor.http package使用meteor.http包从html获取页面标题时遇到问题
【发布时间】:2016-10-02 06:13:15
【问题描述】:
Meteor.http.call( 'GET', 'http://google.com', {}, function( error, response ) {
      if ( error ) {
    console.log( error );
  } else {
    console.log( response );
  }
});

问题是它一直显示这个错误这是我第一次使用这个包所以我不确定我是否真的理解它。

这是我控制台上的错误。

XMLHttpRequest 无法加载 http://google.com。不 请求中存在“Access-Control-Allow-Origin”标头 资源。因此不允许使用原点“http://localhost:3000” 访问。

【问题讨论】:

  • 这是浏览器的一项安全功能。为 Access-Control-Allow-Origin 做一个谷歌并阅读它。有一种方法可以在这里修复它enable-cors.org/server_meteor.html
  • @MikeKing 不要告诉人们用谷歌搜索他们已经搜索了好几天的东西,我觉得这很烦人。我仍然要感谢您提供的链接,尽管它对我没有用,但还是谢谢。
  • 如果你使用的是chrome,你可以试试这个扩展:chrome.google.com/webstore/detail/allow-control-allow-origi/…
  • 我很抱歉@emmanuel-amodo 还有另一种使用 Meteor 的方法-我会在答案中回答

标签: javascript http meteor


【解决方案1】:

来自浏览器的 HTTP 请求将始终遇到此 CORS 问题,除非您明确允许它们带有 CORS 标头。

Meteor 有一个很好的处理方法。首先你打电话:

Meteor.call("httpRequest","http://myserver.com/path/to/file",params);

在服务器中你写一个这样的 Meteor 方法

Meteor.methods({
    httpRequest: function(url,params) {
    // Send the http request here
    })
});

您无法使用 http 请求的结果回调客户端,但您可以将其放入客户端订阅的数据库记录中。

【讨论】:

  • @MikeKing 非常感谢,很抱歉我之前的反应,如果用户提交的 url,我有一个列表,我希望能够自动获取标题页和其他元数据,请你带我走通过它,这就是我所做的。 what I have done so far
猜你喜欢
  • 1970-01-01
  • 2023-03-24
  • 1970-01-01
  • 1970-01-01
  • 2023-04-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多