0
我有一個調用PHP這樣一個Web應用程序:發送ajax響應的最佳做法是什麼?
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.
( )。然後我在.fail()中處理這個問題。
但是如果我想返回EXPECTED錯誤,例如'無效的用戶名或密碼',該怎麼辦?是否可以使用'內部服務器錯誤',或者我應該使用某種json響應協議來通知javascript的錯誤,並在.done()中查找這個?
任何意見非常讚賞。
感謝
迷你
500個狀態通常意味着服務器上發生了一些不好的事情。還有更有意義的[**狀態代碼**](http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html),例如您可以使用401,因爲這是未經授權的狀態代碼,它表示請求需要身份驗證或身份驗證失敗的內容 – 2014-09-20 15:11:57
「無效的用戶名或密碼」不是內部服務器錯誤,因此**否**。 – Bergi 2014-09-20 15:15:29