1
我試圖將用戶重定向到登錄頁面,如果他/她不再登錄或沒有通過Ajax執行某些功能時的權限。爲了避免冗餘,我基於代碼找到了成功回調的包裝,我找到了here,它檢查控制器是否返回了not_logged_in來表示用戶沒有權限。如果用戶沒有權限,我使用自定義成功功能重定向用戶。 問題是它不會將用戶重定向到登錄頁面。相反,它只是在控制檯上打印登錄頁面,而實際的Ajax調用失敗。我應該在我的代碼中更改哪些內容?無法在Ajax封裝器中自定義成功回調內部重定向
這裏是阿賈克斯包裝:
function wrapped_ajax(options) {
var success = options.success;
options.success = function(data, textStatus, jqXHR) {
if(success) {
if (data.not_logged_in) {
window.location = 'login';
} else {
success(data, textStatus, jqXHR);
}
}
};
return $.ajax(options);
}
相同的結果。它仍然只是在控制檯上打印登錄頁面。 – Compiler
你沒有得到任何錯誤?試圖在jsfiddle重現問題導致我嘗試加載混合內容的錯誤。 –
我的控制檯沒有收到任何錯誤。它只是調用Ajax的錯誤回調。 – Compiler