0

ページがロードされると、いくつかのデータを取得する ColdFusion ページに次のものがあります。

ajaxRequest#RowURnumber[I]#.open("POST", "/cfapps/include/scriptname.cfm?i=#RowNumber[I]#", true);
ajaxRequest#RowURnumber[I]#.send(null); 

このスクリプトをネットワーク内の別のサーバーでホストし、上記のコードで呼び出すことはできますか? http アドレスと UNC パスを使用してみましたが、うまくいかないようです。

どんなアイデアでも大歓迎です。

ありがとう。

4

2 に答える 2

2

同じネットワークであっても、ajaxを使用して同じドメイン以外のページにアクセスすることはできません。

ソリューションでは、ドメイン内のプロキシページを使用します。フロントエンドから、ドメイン内のこのプロキシページに対してAJAXリクエストを実行します。これにより、そのコールドフュージョンページからコンテンツが取得され、フロントエンドに渡されます。

$.ajax({
  type:'GET',
  url :'url to a proxy page in server A',
  success: function (){//...}
});

サーバーAには、proxy.cfmというプロキシページがあります。

<cfhttp url="http://www.serverB.com/the actual page..." />
<cfset html = cfhttp.FileContent />
<cfoutput>#html#</cfoutput>

したがって、AJAXはサーバーAにサーバーBからコンテンツを取得して返すように要求します。

于 2012-05-31T03:17:31.063 に答える
1

スクリプトが別のドメインにある場合、ブラウザーの同一オリジン ポリシーにより、スクリプトは実行されません。これ (JSONP、CORS) を調べる方法がいくつかあります。JSONP は、より下位互換性のあるソリューションになります。

于 2012-05-31T03:14:03.323 に答える