javascript - 如何从 JavaScript 获取响应 header 错误?

标签 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.getProjectSuccessful(response);
}).error(function(error){
    console.log(error)
});

我的 error 对象具有“Forbidden”的 statusText 属性,以及包含整个 HTML 的 responseText 属性(在其中我可以查看我的错误消息) - 但是有没有一种简单的方法可以从我的错误对象访问该消息,而无需解析 HTML?

最佳答案

我发现 abort() 函数采用第三个参数 - 一个数组 - 并且它通过响应 header 发送。

所以 - 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'));
});

关于javascript - 如何从 JavaScript 获取响应 header 错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32506168/

相关文章:

javascript - 无法进行本地开发,错误为 : No 'Access-Control-Allow-Origin' header is present on the requested resource

Javascript 的作用是什么? 0 做

javascript - 无法在聊天应用程序中使用 Ajax 调用从 Controller 返回 html

javascript - 电子邮件和密码与即时用户反馈匹配

javascript - 如何在JS中制作一个函数

PHP mySQL 查询和 PHP 变量

php - 插件国际化的提示

php - 如何订购数据两次。但是使第一个订单无效

php - 如何根据 Laravel 中的模型制作迁移文件

php - 未调用 Laravel 授权政策