如何从JavaScript获取响应头错误?
使用Laravel-如何从JavaScript获取响应头错误?,javascript,php,laravel,Javascript,Php,Laravel,使用Laravel- abort(403, 'This is an exception message.'); 如何从JavaScript访问此消息 // Get the project based on projectID. $.ajax({ type: 'GET', url: '/api/projects/getProject/' + projectID }).done(function(response){ ProjectStore.getProjectSucce
abort(403, 'This is an exception message.');
如何从JavaScript访问此消息
// Get the project based on projectID.
$.ajax({
type: 'GET',
url: '/api/projects/getProject/' + projectID
}).done(function(response){
ProjectStore.getProjectSuccessful(response);
}).error(function(error){
console.log(error)
});
我的
error
对象有一个statusText
属性“禁止”,还有一个responseText
属性,它包含整个HTML(在其中我可以看到我的错误消息)-但是有没有一种简单的方法可以从我的error对象访问该消息,而无需通过HTML解析?我发现abort()
函数接受第三个参数-数组-并通过响应头向上发送
So-PHP中的更新代码:
$error = 'User not authorized to view project.';
abort(401, $error, array('errorText'=>$error));
在我的JavaScript中:
// Get the project based on projectID.
$.ajax({
type: 'GET',
url: '/api/projects/getProject/' + projectID
}).done(function(response){
ProjectStore.getProjectSuccessful(response);
}).error(function(error){
console.log(error.getResponseHeader('errorText'));
});
禁止
是一个http错误,错误代码403。所以你实际上得到了错误-检查你是否有正确的权限我很糟糕-我正在使用中止(403,“这是一条异常消息”)
-这就是为什么它显示“禁止”。我仍然不确定如何在不经过作为响应返回的HTML的情况下访问消息本身。