2日程、色々と試したのですが、どうしても自分で解決できそうにないので
お世話になりたいと思い質問させて頂きました。
XMLHttpRequestを使用し、サーバーと非同期通信を行っているのですが
ChromeとFireFoxの場合、戻り値のstatusが0になり、サーバーからのレスポンスデータを
取得する事ができません。IEでは7 ~ 9まで正常に動作する事を確認しております。
(環境)
クライアントOS:Windows7 Professinal
サーバーOS:Windows7 Professinal
Webサーバー:IIS7.5
ブラウザ:Google Chrome 16.0.912.77 m, FireFox 10.0.1
(クライアント側プログラム)
function requestMain(param)
{
// サーバー名はxxxにさせて頂きました。
var url = "http://xxx.xxx.xxx.xxx/app/xhr.cgi?" + param;
var obj = createHttpRequest();
obj.open("GET", url, true);
obj.setRequestHeader("If-Modified-Since", "Thu, 01 Jun 1970 00:00:00 GMT");
ojb.onreadystatechange = function()
{
if (obj.readyState==4)
{
alert(obj.status); // ← ここが0に。IEだと200が返ってきます。
alert(obj.responseText); // ← IEの場合予期したデータがきます。Chrome/FF
// ともに空です。
}
}
httpoj.send("");
}
function createHttpRequest()
{
if(window.ActiveXObject)
{
try
{
return new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
try
{
return new ActiveXObject("Microsoft.XMLHTTP");
}
catch (e2)
{
return null;
}
}
}
else if(window.XMLHttpRequest)
{
return new XMLHttpRequest();
}
}
(サーバー側)
static void main(string[] args)
{
string rtnStr = "HTTP/1.0 200 OK\n";
rtnStr += "<head>\n";
rtnStr += "Access-Control-Allow-Origin:*\n" // ← クロスドメイン対策???
rtnStr += "Content-Type: text/html; charset=UTF-8;\n;
rtnStr += "</head>\n\n";
rtnStr += "<body>test is</body>";
Console.WriteLine(rtnStr);
}
試しに、prototype.jsのAjax.Requestを使用しても結果は同じでした。
後、プログラムでなく、ブラウザーのURL覧からCGIをコールするとtest isが表示されます。
※ CGIはC#で書いています。ASP.NETがあるので意味がないのですが
すみません。^^;
過去にも似たような質問をされた方がいらっしゃったのですが
結局クロスドメインの問題じゃない?とか回答がついてないとかで
答えがわかりませんでした。英語サイトにはそれなりに情報があるみたいですが
読めないのでよくわかりません ;_;
(調べろと言われればそれまでなのですが。。。)
組み込み系や、C/S・スタンドアロンでのWindowsアプリはそれなりの経験を
持っているのですが、Web系は今回初めてで、やり始めて丁度10日になります。
ですので、トンチンカンなご質問をしているかもわかりませんが、
どうぞよろしくお願いいたします。
P.S 最近html, css, javascriptがお試し程度にわかり4、5ページ画面遷移した
簡単なクライアント側アプリを作れる程度です。
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
HTTP ヘッダと HTML の HEAD 要素が頭の中で混ざってぐちゃぐちゃになっちゃってる感じ。
| HTTP/1.0 200 OK
| <head>
| Access-Control-Allow-Origin:*
| Content-Type: text/html; charset=UTF-8
| </head>
|
| <body>test is</body>
↑ではなくて↓を返すと大丈夫かも。
| HTTP/1.0 200 OK
| Access-Control-Allow-Origin:*
| Content-Type: text/html; charset=UTF-8
|
| <html>
| <head><title>test is</title></head>
| <body><p>test is</p></body>
| </html>
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
ロボットの住む世界で流行ってる罰ゲームとは?
-
フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
あなたが普段思っている「これまだ誰も言ってなかったけど共感されるだろうな」というあるあるを教えてください
-
映画のエンドロール観る派?観ない派?
映画が終わった後、すぐに席を立って帰る方もちらほら見かけます。皆さんはエンドロールの最後まで観ていきますか?
-
海外旅行から帰ってきたら、まず何を食べる?
帰国して1番食べたくなるもの、食べたくなるだろうなと思うもの、皆さんはありますか?
-
天使と悪魔選手権
悪魔がこんなささやきをしていたら、天使のあなたはなんと言って止めますか?
-
Ajaxが動きません~『status=0』?
JavaScript
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
フォーカス移動抑止について
-
JavaScriptでiframeの内容を「...
-
iframeの中から親ページをスム...
-
SCRIPT5007: 未定義または NULL...
-
ひとつのHTMLファイル内にcanva...
-
javascriptでクリックしたリン...
-
ボタンのID名を取得するには?
-
チェックボックスの選択パター...
-
【js】onsubmit属性が変更できない
-
マウスオーバーで文字にアンダ...
-
6で割り切れる数を表示するJava...
-
字数計算ソフト
-
「オブジェクトを指定してくだ...
-
<a href="#" …>の意味を教えて...
-
javascriptとApacheの設定
-
テキストボックス内にハイパー...
-
javascriptでalertの文字列をコ...
-
bodyにidをつける理由は何ですか?
-
JavascriptとJqueryを混在し記述
-
スマホ上で、左右スワイプで次...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
function の return 値を表示し...
-
SCRIPT5007: 未定義または NULL...
-
JavaScriptでiframeの内容を「...
-
getElementsByNameで要素が取得...
-
キーを押している間の時間を計...
-
フォーカス移動抑止について
-
JavaScriptでの西暦下2桁での表...
-
自動ジャンプでフォームデータ...
-
出荷予定日を表示するJavaスク...
-
クリックすると別の文章を表示する
-
リンク移動先のURLを取得
-
乱数を一定時間毎に表示させた...
-
JavaScript でキーを送る
-
idHOGEで取得したinnerText(数...
-
ボタンのID名を取得するには?
-
htaでVBSのソースを書いたらエ...
-
Javascriptの出力結果をhtmlボ...
-
bodyタグのfocus
-
AjaxでDBから取得したデータを...
-
JavaScriptでのEnterキーとAlt+...
おすすめ情報