js发起get请求,获取网页源代码?


如何使用js发起get请求,以获取网页的源代码呢?


使用xmlhttprequest的时候,会受到同源策略的影响,导致无法获取其他站点的html源码.
Code:


 var request = new XMLHttpRequest();
request.open("GET","http://www.baidu.com");
request.send();

报错:

已阻止交叉源请求:同源策略不允许读取 http://www.baidu.com/ 上的远程资源。可以将资源移动到相同的域名上或者启用 CORS 来解决这个问题。

程序员 JavaScript

爨冏雠蠡鬯蕤 10 years, 3 months ago

如果从客户端请求时,肯定会有跨域的错误,除非被请求的地址支持jsonp
如果换作从服务端请求就不会有这个问题了

bisrot answered 10 years, 3 months ago

目标网站没启用CORS。默认就是不允许,XMLHttpRequest,Websocket都不行。考虑服务器抓取转发。

作弊小王子 answered 10 years, 3 months ago

Your Answer