1

ajax 呼び出しを使用して別の Web ページの HTML コンテンツを内部に配置しようとしている Web ページがあります。ただし、クロスドメインの問題に苦しんでいます。

$('.trigger').click(function(e) {
    e.preventDefault();
    $.ajax({
        url: 'http://myothersite.com',
        datatype: 'text/html',
        type: 'GET',
        success: function(data) {
            var content = data.responseText;
            console.log(content);
        }
    });
});

これを達成する方法を教えてくれる人はいますか?

ありがとう、

4

2 に答える 2

5

最新のブラウザーでは、クロスドメイン取得を行うことはできません。text/html

現在動作することを私が知っている唯一の戻り値の型はjsonp


または、クロスオリジン リソース共有を行うこともできます。

于 2012-12-19T18:22:47.500 に答える
2

ヘッダーを適切に調整できれば、クロスオリジンリクエストを実行できます。

それが機能するためには、クライアントとサーバーを変更する必要があります。

クライアント:

xhr.setRequestHeader("X-Requested-With", "XMLHttpRequest"];

jQueryを使用するクライアント

jQuery.support.cors = true;

OPTIONSリクエストに適切に応答するには、サーバーをに変更する必要があります。ASP.NET Web APIの例を作成しましたが、サーバーで何を実行していても、概念は同じです。

サーバーに変更を加えることができない場合(たとえば、サードパーティのサービス)でも、旧式のJSONPを使用できます。

于 2012-12-19T18:28:38.833 に答える