昨日一日中これを解決しようとしていましたが、それは私にとって非常に挑戦的であることが証明されました。
このJSを使用して、作成したJavaアプリケーションから情報を取得しようとしています。
$(document).ready(function() {
$.getJSON('http://localhost/custest?callback=?', function(json) {
alert('OK');
$('.result').html(json.description);
});
});
JavaアプリケーションはhttpServerを使用し、非常に基本的です。
ページにアクセスすると' http:// localhost / custest?callback =?' Firefoxの場合、ブラウザはサーバーがjsonデータを送信していることを示し、何で開くかを尋ねますが、上記のJSを使用してWebページから試してみると機能しません。getJSON呼び出しは成功せず、alert( "ok")はまったくポップアップしません。
「 http:// localhost / custest?callback =?」を置き換える場合 JSで「http://twitter.com/users/usejquery.json?callback=?」すべてが正常に動作します。
興味深いのは、Javaサーバーから不正な形式のJSONを送信すると、Firebugがエラーを出し、JSONに何がないかを教えてくれるので、ブラウザーがJSONデータを受信していることを意味しますが、正しいJSON文字列を送信しても何も起こりません。エラーはなく、alert()も開きません。
これらが関連していると思われる場合に備えて、ヘッダーを追加しています。
http://localhost/custest?callback=jsonp1274691110349
GET /custest?callback=jsonp1274691110349 HTTP/1.1
Host: localhost
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.3) Gecko/20100401 Firefox/3.6.3
Accept: */*
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 115
Connection: keep-alive
HTTP/1.1 200 OK
Transfer-Encoding: chunked
Content-Type: application/json
ご協力いただきありがとうございます。