【发布时间】:2019-03-29 07:41:37
【问题描述】:
我想在 javascript 或任何其他替代方案中从客户端的 url 获取 html 内容
我曾在 php 中尝试过服务器端,但我试图获取它的网站一直在禁止我的服务器 IP 地址 我已经尝试过它告诉我跨域请求被阻止的ajax方式:我试图允许它但没有任何帮助。 我想在我试图从客户端的网络浏览器获取的网站上传递请求,以免被禁止
这是来自 php 和 ajax 请求的示例
<?php
curl_setopt_array($curl, array(
CURLOPT_URL => "https://www.example.com/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTPHEADER => array(
"accept: application/json, text/javascript, */*; q=0.01",
"accept-encoding: gzip, deflate, br",
"accept-language: en-US,en;q=0.8,en;q=0.6",
"cache-control: no-cache",
"content-type: application/json; charset=UTF-8",
"origin: https://www.example.com/",
"referer: http://www.example.com/",
"user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.110 Safari/537.36",
"x-microsoftajax: Delta=true"
),
));
curl_exec($curl);
?>
<script type="text/javascript">
$.ajax({
url: 'http://www.example.com/',
dataType: "html",
success: function(data) {
// your code to handle data here
}
});
</script>
【问题讨论】:
-
如果他们阻止了你,而你没有授权这样做,很容易被认为是黑客行为,会受到惩罚......
-
即使你描述的方法不管你怎么尝试都行不通。 CORS 是当您尝试使用 ajax 访问远程网站时,除非您有授权,否则这是不允许的。您还必须使用您的 ip 向网站发出请求,因此无论如何您都会被阻止。最后,老实说,如果我没有闻到这有什么问题,我会提供另一种选择.. 但是我
标签: javascript php node.js laravel