[英]JQuery Ajax returning success with nonexistent url parameter
因此,在Laravel的一種觀點中,我有這段代碼:(沒有“ unexistenturl”這樣的網址,我只是整理了一下)
<script type="text/javascript">
$(document).ready(function(){
$('#btnAdd').click(function(){
addToCart();
});
function addToCart(){
$.ajax({
method: "GET",
url: "nonexistenturl",
data: { msg: 'hi' },
success: function(data){
alert('success');
}
})
}
});
</script>
而且顯示警告消息,我不明白為什么。 謝謝您的幫助!
編輯0:現在,我在另一個視圖中嘗試了相同的代碼,但出現了必須的錯誤,但是我不知道為什么它在另一個視圖中仍然有效。
編輯1:
由於某種原因,如果我運行從一個特定視圖發布的javascript代碼,則會執行以下代碼:
public function show($id)
{
$recipe = \App\Recipe::find($id);
return view('recipes.show')->with('recipe', $recipe);
}
Laravel的路線是:
Route::get('recipe/{id}', 'RecipesController@show');
因此,就好像ajax請求正在使用另一個URL,即當前視圖中的那個一樣。
編輯2
我現在真傻。 正如charlietfl建議的那樣,它使用的是“食譜/不存在”網址。 所以我所要做的就是使用:url:“ {{url('route')}}”
謝謝大家的幫助 :)
這可能意味着Laravel正在返回某種類型的網頁,即使上面沒有數據,它返回的內容也被認為是成功的。 調試此錯誤的一個好方法是警告數據,如果返回一個對象,則警告data.responseText。
alert(data.responseText);
這也將有助於導航您正在制作的任何偽造的URL,以查看Laravel返回的內容。 編輯
嘗試將json指定為返回類型,我相信它默認為text。
$.ajax({
method: "GET",
url: "nonexistenturl",
dataType: 'json',
data: { msg: 'hi' },
success: function(data){
alert('success');
}
})
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.