[英]Ajax GET request fails in laravel 8
當我嘗試發送帶有教程的 GET 請求時,但它不起作用並最終出現 500 內部服務器錯誤我無法通過在論壇或 stackoverflow 上搜索找到任何錯誤,而且我是初學者,請尋求您的幫助
這是我的觀點 ajax.blade.php
<html>
<head>
<title>Ajax Example</title>
<script src = "https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js">
</script>
<script>
$.ajax({
type: "GET",
url: "getmsg",
success: function(data) {
console.log(data);
},
error: function(data){
console.log("fail");
}
});
</script>
</head>
<body>
</body>
</html>
這是 controller class
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class aController extends Controller
{
function index() {
return response()->json(array('d'=> 'success'));
}
}
這里是 web.php Route::get('getmsg',[aController::class,'index']);
更新您的路線
use App\Http\Controllers\aController;
Route::get('/getmsg', [aController::class, 'index']);
Laravel 8 要求您提供 controller 的完整路徑,或者您可以定義一個默認命名空間來像這樣定位您的控制器,在您的RouteServiceProvider.php
中定義以下內容
protected $namespace = 'App\Http\Controllers';
您應該得到 controller 的響應。
首先檢查你是否使用jquery-3.2.1.slim.min.js
,不支持 slim 版本所以刪除 slim 版本並將其替換為:
<script
src="https://code.jquery.com/jquery-3.6.0.min.js"
integrity="sha256-/xUj+3OJU5yExlq6GSYGSHk7tPXikynS7ogEvDej/m4="
crossorigin="anonymous"
></script>
然后在庫鏈接是否正確之后檢查 csrf、路由、數據等內容。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.