Khi gửi phản hồi JSON trở lại yêu cầu AJAX, tại sao lại sử dụng hàm WordPress wp_send_json()
mà không echo json_encode()
? Lợi ích của việc sử dụng các chức năng WordPress là gì wp_send_json()
hơn echo json_encode()
?
Tham chiếu: wp_send_json
Khi gửi phản hồi JSON trở lại yêu cầu AJAX, tại sao lại sử dụng hàm WordPress wp_send_json()
mà không echo json_encode()
? Lợi ích của việc sử dụng các chức năng WordPress là gì wp_send_json()
hơn echo json_encode()
?
Tham chiếu: wp_send_json
Câu trả lời:
wp_send_json()
xử lý tất cả các phần của nội dung trả về trong một cuộc gọi AJAX. Trước hết, nó đặt loại nội dung của nội dung được trả về application/json
với bộ ký tự phù hợp. Thứ hai, nó tự động gọi wp_die()
sau khi gửi kết quả JSON, điều cần thiết trong cuộc gọi AJAX trong WordPress.
Bạn có thể xem xét sử dụng wp_send_json_success()
cho các yêu cầu thành công và wp_send_json_error()
cho các yêu cầu sai, do đó tuân thủ các tiêu chuẩn WordPress để xử lý các yêu cầu AJAX. Các hàm này đặt khóa success
(boolean) và data
(bất kỳ loại) nào trong một mảng và mã hóa toàn bộ mảng đó, do đó cho phép bạn dễ dàng kiểm tra theo cách có cấu trúc xem yêu cầu có thành công hay không, có vấn đề gì không.