AJAX是一種在Web開發中常用的技術,它使得網頁能夠在無需刷新整個頁面的情況下,通過異步加載數據并更新部分內容。而HTTP 201響應狀態碼則表示請求已成功,并且服務器已經創建了新的資源。
舉個例子來說明,假設我們正在開發一個博客網站,在用戶發表新的評論時,我們希望能夠通過AJAX發送請求,將評論保存到數據庫中,并在不刷新頁面的情況下更新評論列表。當服務器成功地創建了新的評論資源后,我們可以使用HTTP 201狀態碼來表示這一成功的結果,同時通過獲取到的新資源URL來更新評論列表中的內容。
$.ajax({ url: 'https://example.com/comments', method: 'POST', data: { content: '這是一個新的評論', userId: '12345' }, success: function(response, status, xhr) { if (xhr.status === 201) { var newCommentUrl = xhr.getResponseHeader('Location'); // 在評論列表中異步加載新的評論內容 loadComment(newCommentUrl); } } });
在上面的例子中,我們通過AJAX發送了一個POST請求,將新的評論內容發送到服務器的`https://example.com/comments` URL。當服務器成功創建了新的評論資源時,我們的回調函數會被調用,并且通過檢查`xhr.status`屬性,我們可以判斷服務器的響應狀態碼是否為HTTP 201。
進一步地,我們可以通過`xhr.getResponseHeader('Location')`來獲取服務器返回的新資源URL。通過這個URL,我們可以在評論列表中異步加載新的評論內容,并更新頁面的展示。
總結來說,AJAX和HTTP 201狀態碼的結合使用,可以使得網頁能夠實現無刷新更新的效果,并且保證操作的成功性。通過獲取服務器返回的響應狀態碼和新資源URL,我們能夠精確地處理成功的結果,提高用戶體驗。