我有一个调用php的webapp:
var jqxhr =
$.getJSON( url )
.done( function( data, status ) {
if( status == 'success' ) {
rv = true;
// initialise the user object
app.user = new User( data );
// post login-processing
app.postLogin();
} else {
// login failed
console.log( "autologin failed!" );
}
})
.fail( function() {
console.log( "autologin fail" );
}); // end var jqxhr =
我想知道php脚本中最佳做法是什么?
例如,如果一切正常,我的php返回:
header('Content-type: application/json; charset=utf-8');
print json_encode($row);
如果出现意外错误,例如错误的SQL,我的php会返回:
header('HTTP/1.1 500 Internal Server Error');
header('Content-Type: application/json; charset=UTF-8');
etc.
在调用die()之前。然后我在.fail()中处理它。
但是,如果我想返回EXPECTED错误,例如“用户名或密码无效”,该怎么办?可以使用“内部服务器错误”,还是应该使用某种json响应协议来通知javascript错误,并在.done()中查找?
任何建议都非常感谢。
由于
迷你
答案 0 :(得分:0)
我认为您应该检查服务器端脚本的标头响应并相应地使用switch case。 例如: - 如果标头响应是json然后使用不同的情况,如果标头响应失败ajax调用然后使用不同的情况。