0

こんにちは私はここで問題がありますこれは私のコードです。「http:// localhost」を記述してコンテンツを取得すると機能しますが、「http://www.google.com」などの他のWebサイトを作成すると機能しません。私はあなたたちがそれをテストするために私のウェブホストにコードをアップロードしました。ここにリンクがあります。http://faceproishere.netii.net/test.php そしてここで私のコードを見ることができます:

<!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>

事前にTnx。

4

2 に答える 2

3

別のソースからこの方法でコンテンツにアクセスすることはできません。これはセキュリティ上の理由から許可されていません。参照: https ://developer.mozilla.org/en-US/docs/Same_origin_policy_for_JavaScript

ブラウザのコンソールを確認すると、このタイプの問題を非常に簡単に確認できます。

于 2012-08-26T07:22:15.547 に答える
0

データまたはアドレスを取得するためにcurlへの呼び出しを設定できますが、curlにアクセスできる場合。

curlは、ほとんどのLinuxディストリビューションで利用可能なbashツールです。ここで見つけることができますhttp://curl.haxx.se/

あなたがしていることは、curlでフェッチしたサイトに結果を配信するローカルリクエストトラフajaxを設定することです。Curlは、ほとんどのスクリプト言語でシェルを介して呼び出すことができます。curlをインストールしていて、スクリプトのサポートが必要な場合は、どの言語を教えてください。私がお手伝いできるかもしれません。

彼女は説明です。私がこれを行ったときは、パスを設定してリンクの引数をキャプチャするのが非常に簡単なルビーシナトラにあったので、あなたには合わないかもしれません。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スクリプトに送信できるようにする方法ですが、ルビーシナトラの例が必要な場合は、これを解決できます。

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
于 2012-08-26T07:32:44.753 に答える