我有一个Web应用程序,它调用php,因此:
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().中处理此问题
但是,如果我想返回一个预期错误,例如"无效的用户名或密码",该怎么办?使用"内部服务器错误"可以吗?还是应该使用某种json响应协议来通知javascript错误,并在.done()中查找此错误?
非常感谢任何建议。
感谢
迷你
我认为您应该检查来自服务器端脚本的头响应,并相应地使用switch case。例如:-如果头响应是json,则使用不同的情况;如果头响应失败,则使用ajax调用,则使用其他情况。