JSON を提供する単純なレスト サービスを作成しました。ブラウザーからアクセスしてhttp://localhost:8080/WebTodo/rest/todos
、JSON で ToDo のリストを取得できます。(このチュートリアルでした: http://www.vogella.com/articles/REST/article.html#crud )
次に、この単純な html を使用して Jquery 経由で JSON を取得します。
<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.aspnetcdn.com/ajax/jquery/jquery-1.9.0.js"></script>
<script>
function getJsonFunc() {
console.log("find all");
$.ajax({
type: "GET",
url: "http://localhost:8080/WebTodo/rest/todos",
contentType: "application/json",
dataType: "json",
success: function (data, status, jqXHR) {
alert('Success')
},
error: function (jqXHR, status) {
alert('Error')
}
});
}
function writeJson(todo) {
console.log("after json");
var items = [];
$.each( todo, function( key, val ) {
items.push( "<li id='" + key + "'>" + val + "</li>" );
});
$( "<ul/>", {
"class": "my-new-list",
html: items.join( "" )
}).appendTo( "body" );
}
</script>
</head>
<body>
<button id="search" onClick="getJsonFunc()">get</button>
</body>
</html>
これにより、常にエラーアラートが返されます。私はすでに別のブラウザで試してみましたが、Chrome で同じオリジン ポリシーを無効にして試してみました。何も助けませんでした。ここで何が欠けていますか?
これは、ブラウザで受け取る実際のjsonです{"todo":[{"description":"Description","done":"false","titel":"Do something","uri":"2"},{"description":"Description","done":"false","titel":"Learn REST","uri":"1"}]}