jquery ajaxを使用してCGIから値を取得しようとしています。 CGIの設定は自分のサーバーにはないので変更できません。jquery ajax:CGIから値を読み取る
私はCGIについて知っているすべては私が直接ブラウザのアドレスバーでこれをテープで固定した場合ということです:
は「http:?//otherdomain/cgi-bin/getvalue.exe値」
それから私レスポンス値、つまり空白のブラウザウィンドウに表示される1234を取得します。
次のajaxコールでは、firebug - > network - > responseタブ(1234)で応答値を取得します。私はJavaScriptの値にアクセスすることはできません。 console.log(data)は "undefinded"を返します。
javascriptで値をキャッチする方法はありますか?
私は、パスワード(クッキー)もCGIに送信する必要があるので、私はdataType: "script"としてajaxリクエストを送信しなければならないと思います。私がdataType: "text"を選択した場合、クッキーからのパスワードはリクエストヘッダに送られません。
$.ajax({
type: "GET",
url: "http://otherdomain/cgi-bin/getvalue.exe?value",
crossDomain: true,
cache: true,
dataType: "script",
success: function(data, textStatus, jqXHR) {
console.log(data);
},
error: function(jqXHR, textStatus, errorThrown) {
console.log(errorThrown);
console.log(textStatus);
console.log(jqXHR);
}
});
'dataType'プロパティは、要求ではなく** response **の予想されるデータ型です。空白のままにしておくと、デフォルトの "best guess"が使用され、jQueryはレスポンスの形式に基づいて型を推測しようとします。 –
スクリプトとは異なるデータタイプを使用する場合、パスワードはサーバーに送信されません。 – user1313691
**スクリプトとは異なるデータタイプを使用する場合**パスワードはサーバーに送信されません。リクエストヘッダー** Cookie:pwd = xxxx **は、私がdataType:ajax呼び出しで "script"を選択した場合にのみ送信されます。 – user1313691