Web アプリケーションがサーバー側の REST API にアクセスする必要がある 2 つの異なるプロジェクトがあります。したがって、サーバー側で JacksonMapper を使用して Spring MVC Rest API をセットアップし、クライアント側で Jquery.ajax() を使用して JSONP 要求をセットアップしました。これは正常に機能します。
ただし、Safari (バージョン 6.0.5) は GET 要求と contenType "json" (コールバックなしの REST API で) を含む JSON 応答を完全に表示するのに対し、他のすべてのブラウザーは失敗することがわかりました。好奇心のために、誰かがこれがどのように可能かを説明できますか?
リクエストは次のとおりです。
$.ajax({
type: "GET",
dataType: "json",
url: url,
data: {
origin: start.toUrlValue(6),
destination: dest.toUrlValue(6)
},
success: function (data) {
console.log(data);
var res = JSON.stringify(data); //json to string
$('#result').text(res);
},
error : function(jqXHR, textStatus, errorThrown) {
alert("Request failed: " + textStatus);
console.log(JSON.stringify(jqXHR));
},
});
UPDATE 問題を解決するには。リクエストが API に届き、サーバーが処理を行って JSON レスポンスを送信していることがわかります。他のブラウザでは応答を処理できません。