-1

次のような ajax 呼び出しがあります。

$.ajax({
    type: "POST",
    url: "www.something.com/login.php",
    cache:false,
    dataType: "json",
    data: { 
        username: $('#user').val(),
        password: $('#pass').val()
           },
        success: function(response) 
        {
           localStorage.setItem('user',response.results[0].user);
           localStorage.setItem('company',response.results[0].company);

        }
});

ファイルと同じルートにないスクリプトに接続しようとしているため、これは機能しません。この PHP ファイルは外部サーバーにあります。

JSONPこのスクリプトを機能させるには、どのように使用する必要がありますか?

4

3 に答える 3

1

できますよ。JSON と JSONP の唯一の違いは、JSONP が関数名でラップされていることです。

{ "x": "hello" } // JSON
foo({ "x": "hello" }); // JSONP.
于 2013-08-17T19:27:31.163 に答える
0

URL 変数を介して情報を渡す必要があります。

type: "GET",
url: "www.something.com/login.php?login="+username+"&password="+password,

次に、サーバー側で:

$_GET["username"];
$_GET["password"];

しかし、私がこれを言ったので、パスワードとログインのためにこれをしないでください! これは非常に安全ではありません!!!

代わりに、バックエンドで他の Web サイトとデータを共有するローカル PHP ファイルを作成します。これができない場合はiframes、元の方法を使用して使用してください。

もう 1 つの方法は、cURL を使用することです。cURL を使用すると、ブラウザのページにいるときと同じようにログインできます。それほど高速ではありませんが、あまり制御できない Web サイトや API を持たない Web サイトでは非常にうまく機能します。

PHP CURL を使用してリモート Web サイトにログインする

于 2013-08-17T19:20:52.407 に答える