私のWebサービスは、次のようなJSONオブジェクトを返します
["abc","xyz","option_3"]
つまり、このアドレスを chrome ブラウザhttp://localhost:8088/rest/getOptions
に入力すると、上に表示されます。
ドロップダウンオプションを作成できるように、ブラウザでこれを読み取ろうとしています...しかし、以下のコードからは何も得られません:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script type="text/javascript">
url="http://localhost:8088/rest/getOptions";
var ajaxResult = null;
function getData(yt_url){
$.ajax
({
type: "GET",
url: yt_url,
dataType:"json",
async: false,
success: function(response){
ajaxResult = response;
}
});
}
getData(url);
alert(ajaxResult);
</script>
</head>
<body>
</body>
</html>
私はいつもnull
アラートボックスに入ります。Web サービスの要求/応答が正常に行われていることを fiddler2 で再確認しました。Web サービスとブラウザーの間で json オブジェクトをインターセプトすることもできます。
私も試しました
var obj = JSON.parse(ajaxResult);
alert(obj);
私は再びnullになります。
私はすでにjson応答のAjax呼び出しと同様の質問を見てきました。私のJSONは少し違うので、私の場合はこれらの解決策が適用されないか、従わなかったかのどちらかです。
私は AJAX と Java スクリプトを初めて使用します。アドバイスをお願いします。
編集: このrest / getOptionsエンドポイントを提供するJERSEY Webサービスコードを追加
@GET
@Path("getOptions")
@Produces(MediaType.APPLICATION_JSON)
public List<String> getOptionsJson() {
//build alloptions List<String>
return alloptions ;
}