jQuery ajax自定义HTTP状态消息在2xx范围内
jQuery ajax custom HTTP status message on the 2xx range
我正在尝试用自定义http状态消息响应机制,并在客户端使用jQuery Ajax捕获它。
我想出了一种方法,只做错误消息(HTTP 4xx, 5xx),但不为成功的HTTP消息(HTTP 2xx)。
作为例子,我设法从HTTP 400 FROG CATCH
状态中提取并警报'FROG CATCH',但不能从HTTP 200 FROG ESCAPE
中警报 'FROG ESCAPE'
有没有人知道一种方法来扩展jQuery ajax支持这种模式?
有人知道吗?
AJAX响应基于成功和错误。如果您的内容返回状态为200 (OK)、304(未修改),等等……那么AJAX调用将利用成功响应部分,而不是通常显示状态的错误部分(错误部分中的状态主要用于指示错误的原因)。根据返回的内容和返回的格式,你应该在成功部分中寻找响应。假设您的服务器语言是PHP,您可以在返回的数据中包含成功状态(转换为JSON对象以进行解析),如下所示:
$.ajax({
url : 'your_url.php',
type : 'POST',
dataType : 'JSON',
data : yourData,
success : function(data) {
if(data) {
if(data.status) {
alert('Status: ' + data.status);
}
}
},
error : function(xhr, response, status) {
alert('Response: ' + response.responsetext);
}
});
通过使用JSON对象作为状态载体,您可以自定义状态响应。至于看到实际的服务器头响应是什么,这将在Chrome检查器的网络选项卡,Firebug的网络选项卡或Safari的开发工具部分(我忘记了名字)中列出。
相关文章:
- Angularjs无法将单选按钮与嵌套范围内的模型绑定
- 如何使用D3生成特定范围内的随机颜色
- 将自定义css保持在角度范围内
- Angular JS-文本框未在独立范围内更新
- cookie不在网站范围内
- 获取给定JavaScript范围内的解析函数
- 如何在JavaScript中使用此函数对范围内的所有数字求和
- JavaScript-仅验证数值并且在范围内
- JS:从数组中查找特定范围内的最低/最高数字
- 试图检查表单中的值是否为一个设定范围内的数字
- 在十进制范围内搜索
- 基于日期范围的一组日期范围内的天数
- 如何在 Google 应用脚本中 sendEmail 函数的范围内的唯一非空白列中返回值
- 将数组传递给函数或确保它在范围内
- socket.io 客户端是否必须存在于全局范围内
- 查找某个日期范围内的可用天数
- 网站范围内jQuery/javascript选择器的最佳实践
- 如果指令包含在另一个指令中,我如何在隔离范围内添加双向数据绑定属性
- JS日期对象在某个范围内的百分比
- jQuery ajax自定义HTTP状态消息在2xx范围内