当我发出javascript ajax请求时,控制台记录500错误(内部服务器错误) 我已经使用{{csrf_token()}}在标头中将令牌传递给请求 我做错了什么?
我的路由器设置
Route::post('/checkemail', 'UserController@checkemail');
我的控制器文件
<?php
namespace App\Htpp\Controllers;
use Illuminate\Http\Request;
class UserController extends Controller{
public function checkemail(Request $request){
return 'something';
}
}
?>
我的javascript ajax
path = location.href
token = {{ csrf_token() }}
$.ajax({
url: `${path}checkemail`,
method: "post",
data: {"email":email},
async: false,
dataType: "json",
headers: {
'X-CSRF-TOKEN': token
}
}).done(function(result){
console.log(result)
}
答案 0 :(得分:3)
确保在控制器中输入正确的namespace
。
namespace
应该是App\Http\Controllers;
而不是App\Htpp\Controllers;
(就像在您键入UserController
的路由中那样,它不以完整的名称空间作为前缀)。
因此控制器将如下所示:
<?php
namespace App\Http\Controllers; // here is the change
use Illuminate\Http\Request;
class UserController extends Controller{
public function checkemail(Request $request){
return 'something';
}
}
?>