-2

次のコードを使用して、外部 URL に ajax を使用してデータを投稿しようとしています。

$(document).ready(function(){
    $('.submit_button').click(function() {
        $.ajax({
                type : 'POST',
                url : 'http://site.com/post.php',
                dataType : 'text',
                data: $("#infoForm").serialize()
        }).done(function(results) {
                    alert(results);
        });
        event.preventDefault();
    });
});

しかし、次のエラーが発生します。

XMLHttpRequest はhttp://site.com/post.phpを読み込めません。Origin null は、Access-Control-Allow-Origin では許可されていません。

サーバーのhtaccessファイルに次の行も追加しました

Header set Access-Control-Allow-Origin *

私が間違っていることと、データを外部 URL に投稿する方法を教えてくれる人はいますか?

4

2 に答える 2

3

外部 URL はあなたのものですか? いいえの場合、それは不可能です。はいの場合、そのドメインで次のヘッダーを返す必要があります。

Access-Control-Allow-Origin: http://your.domain.com

または、すべてのドメインを許可する場合:

Access-Control-Allow-Origin: *

詳細については、https ://developer.mozilla.org/en-US/docs/HTTP/Access_control_CORS をご覧ください。

プロキシを作成する必要があるドメインでない場合は、そのドメインから必要なコンテンツを取得する PHP ファイルを作成します。そして、独自のドメインに対して ajax リクエストを実行します。

于 2013-05-09T15:12:07.157 に答える