空のレスポンスボディを返すPOSTサービスがバックエンドにあります。空のレスポンスでJqueryのプロミスコールバックが実行されない
私は約束を返します。このようなjqueryのからAJAX呼び出しを使用してサービスを呼び出す:
return $.when($.ajax({
type: 'POST',
url: url,
beforeSend: (xhr) => {
xhr.setRequestHeader('Content-Type', 'application/json;charset=UTF-8')
},
data: data,
dataType: 'json',
crossDomain: true
}))
次にメソッド呼び出し:しかし、だから、AJAX呼び出しが行われた
myMethod(params).done(
(response) => {
console.log(response)
}
)
をdoneは決して実行されません。 サーバーが応答本体に何かを返す場合、それは機能します。
私は何が欠けているのか分かりません。
あなたは '$ .when'は必要ありません。 '$ .ajax(..)'だけを返してください。 – hindmost
あなたは 'fail()'を返さないと確信していますか?たぶんあなたは '。常に()'をしたいでしょうか? – Liam
hindmost私は約束が欲しい。 @Liam、失敗する可能性がありますが、完了すると、常に同じではありませんか? – Pablo