jquery get可以在本地主机上工作,但不能在其他站点上工作
嗨,我有个问题 这是我的代码,它在我写的时候起作用”http://localhost“并检索内容,但当我编写其他网站时,如”http://www.google.com“它不起作用。 我已经在我的网络主机上传了代码供你们测试。 这里是链接。 在这里你可以看到我的代码:jquery get可以在本地主机上工作,但不能在其他站点上工作,jquery,get,Jquery,Get,嗨,我有个问题 这是我的代码,它在我写的时候起作用”http://localhost“并检索内容,但当我编写其他网站时,如”http://www.google.com“它不起作用。 我已经在我的网络主机上传了代码供你们测试。 这里是链接。 在这里你可以看到我的代码: <!DOCTYPE HTML> <html> <head> <meta charset="utf-8"> <title>Untitled Document</titl
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title>Untitled Document</title>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js" type="text/javascript"></script>
</head>
<body>
<input type="text" name="field1" id="field1" value="http://localhost">
<input value="load" type="button" onClick="my_function()">
<textarea cols="15" rows="12" id="frame1" style="float:left"></textarea>
<div id="frame2" style="width:400px;height:400px;overflow:scroll;fl oat:left"></div>
<script type="text/javascript">
function my_function()
{
if($("#field1").val() != '' && $("#field1").val().indexOf("http",0) == 0)
{
$.get($("#field1").val(),function(data)
{
$("#frame1").html(data)
$("#frame2").html(data)
})
}
}
</script>
</body>
</html>
无标题文件
函数my_函数()
{
if($(“#field1”).val()!=''&$(“#field1”).val().indexOf(“http”,0)==0)
{
$.get($(“#field1”).val(),函数(数据)
{
$(“#frame1”).html(数据)
$(“#frame2”).html(数据)
})
}
}
Tnx。您不能通过这种方式从其他来源访问内容。出于安全原因,这是不允许的。另见:
如果您检查浏览器的控制台,您可以很容易地看到这种类型的问题。您无法通过这种方式从其他来源访问内容。出于安全原因,这是不允许的。另见:
如果您检查浏览器的控制台,您可以很容易地看到这种类型的问题。如果您有权访问curl,您可以设置对curl的调用以检索数据或地址 curl是大多数Linux发行版上可用的bash工具。可以在这里找到 您要做的是通过ajax设置一个本地请求,将结果传递到使用curl获取的站点。在大多数脚本语言中,Curl可以通过shell来调用。若你们已经安装了curl并且需要脚本方面的帮助,请告诉我我和langauges可能会提供哪些帮助 好吧,她是一个解释。当我这样做的时候,它可能不适合你,它是在ruby sinatra中,它非常容易设置路径和捕获链接的参数。在php中可能会有点困难 首先,您需要某种方法来设置调用使用curl的php脚本的本地路径。最简单的方法是向web路径添加一个文件(取决于web服务器和框架) 在文件curl_test.php中,您可以执行以下操作:
$response = system('curl www.google.se', $returnvalue);
echo($response)
然后设置ajax请求以运行该脚本,如下所示:
$.ajax({
url: "localhost/curl_test.php",
data: data,
success: success,
dataType: dataType
});
接下来的诀窍是如何将正确的数据放在数据部分,这样您就可以将get变量发送到curl脚本,但是如果您想要一个ruby sinatra示例,我会让您解决这个问题
get '/data/:brand' do
data_link = "https://someplace.com/brands/#{params[:brand]}"
c = Curl::Easy.perform(data_link)
content_type :json
c.body_str
end
如果您有权访问curl,您可以设置对curl的调用来检索数据或地址 curl是大多数Linux发行版上可用的bash工具。可以在这里找到 您要做的是通过ajax设置一个本地请求,将结果传递到使用curl获取的站点。在大多数脚本语言中,Curl可以通过shell来调用。若你们已经安装了curl并且需要脚本方面的帮助,请告诉我我和langauges可能会提供哪些帮助 好吧,她是一个解释。当我这样做的时候,它可能不适合你,它是在ruby sinatra中,它非常容易设置路径和捕获链接的参数。在php中可能会有点困难 首先,您需要某种方法来设置调用使用curl的php脚本的本地路径。最简单的方法是向web路径添加一个文件(取决于web服务器和框架) 在文件curl_test.php中,您可以执行以下操作:
$response = system('curl www.google.se', $returnvalue);
echo($response)
然后设置ajax请求以运行该脚本,如下所示:
$.ajax({
url: "localhost/curl_test.php",
data: data,
success: success,
dataType: dataType
});
接下来的诀窍是如何将正确的数据放在数据部分,这样您就可以将get变量发送到curl脚本,但是如果您想要一个ruby sinatra示例,我会让您解决这个问题
get '/data/:brand' do
data_link = "https://someplace.com/brands/#{params[:brand]}"
c = Curl::Easy.perform(data_link)
content_type :json
c.body_str
end
通常,你不能。现在,有一个新的特性称为CORS(),它将在以后的浏览器上工作,但前提是您试图访问的资源允许它。如果您需要访问提要,可以通过JSON-P访问。这并不能直接绕过限制,这有点像黑客。最好的办法是设置一个服务器端代理。通常情况下,你不能。现在,有一个新的特性称为CORS(),它将在以后的浏览器上工作,但前提是您试图访问的资源允许它。如果您需要访问提要,可以通过JSON-P访问。这并不能直接绕过限制,这有点像黑客。最好的办法是设置一个服务器端代理。jQuery托管在google的cdn上不应该是“
https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js
托管在谷歌cdn上的jQuery不应该是“https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js
是的,幸运的是我有卷发在我的服务器中。是的,你可以,它是用php。你能用php语言的一些代码解释你的想法吗?还请告诉我,我的问题是否能用iframe而不是div元素解决。谢谢。是的,幸运的是我的服务器中有CURL。是的,你可以,它是用php编写的。你能用php语言的一些代码来解释你的想法吗?请告诉我,我的问题是否可以用iframe而不是div元素来解决。谢谢。