Xin chào các bạn, tôi mới bắt đầu học php. Vì vậy, tôi đã cố gắng tạo một yêu cầu đăng bài từ tệp javascript của mình sang tệp php của mình trước
5 khi tôi thực hiện yêu cầu trong bảng điều khiển của mình. Tôi gặp lỗi này
6 Tôi không hiểu tại sao lại xảy ra lỗi này. Xin hãy giúp tôi khắc phục vấn đề nàyNội dung chính Hiển thị
- Video learning setting per day
- Fetch api là gì?
- Cú pháp tìm nạp api cơ bản
- NHẬN yêu cầu với Fetch API
- tiêu đề tùy chỉnh
- Gửi thông tin xác thực với Fetch
- Yêu cầu POST/PUT
- Đăng một HTML
- Dữ liệu được mã hóa biểu mẫu
- Đang tải tệp lên
- Tải lên nhiều tệp
JavaScript
// payload object
const data = {
first_name: "first name",
last_name: "last name"
}
// make the request
fetch["ajax-insert.php", {
method: "POST",
body: JSON.stringify[data],
headers: {
"Content-Type": "application/json; charset=UTF-8"
}
}]
.then[[response] => response.json[]]
.then[[data] => console.log[data]]
PHP
Udo E
2.4712 huy hiệu vàng18 huy hiệu bạc28 huy hiệu đồng
đã hỏi 17 tháng 3 lúc 11. 44
1
Bạn đang nhận được lỗi này. Uncaught [trong lời hứa] SyntaxError. Mã thông báo không mong muốn < trong JSON ở vị trí 0, vì phản hồi lỗi HTML đang được trả về trình duyệt thay vì dữ liệu json
Trong PHP, sử dụng
7 để lấy chuỗi json và
8 để lấy đối tượng php như hình bên dưới. Lưu ý rằng cuộc gọi tìm nạp javascript của bạn đang mong đợi vì dữ liệu được trả về chỉ là chuỗi jsonPHP
đã trả lời 19 tháng 3 lúc 11. 39
Udo E. Udo E.
2.4712 huy hiệu vàng18 huy hiệu bạc28 huy hiệu đồng
5
Đầu tiên tệp js của bạn bị thiếu một dấu ngoặc nhọn
method: "POST",
body: JSON.stringify[data],
headers: {
"Content-Type": "application/json; charset=UTF-8"
}
}]
.then[[response] => response.json[]]
.then[[data] => console.log[data]]
Ngoài ra, trong php của bạn, bạn cần gửi lại một cái gì đó giống như json
________số 81
Nội dung bài viết
Video learning setting per day
Fetch api là gì? . Fetch api cho phép các nhà phát triển lấy tài nguyên và thực hiện các yêu cầu thông qua http
Trước đây chúng tôi có đề cập đến bài viết yêu cầu api trong Nodejs "3 cách để thực hiện các yêu cầu HTTP [Http request] trong Node. js" nhưng không đề cập đến thằng này [Fetch] vì sao??? Thử xem nào?
Fetch api là gì?
Nói cho sang vậy thôi chứ không phải bất cứ kẻ lập trình nào mà biết đến nó [XMLHttpRequest] và sau đó sử dụng jquery với ajax để sử dụng đăng bài, nhận. Hồi ajax mới ra, ai mà sử dụng được jquery. ajax cũng pro lắm rồi. Làm bao nhiêu công việc như thêm html, thay đổi giá trị mà không tải lại trang, tổ chức các kiểu này. Khiếp lắm, giờ đỡ rồi. D. Sau một hồi thở dài thì các nhà phát triển cũng nhận thấy những bất cập khi sử dụng ajax, hay XMLHttpRequest và quay sang ủng hộ các API gốc. Và hôm nay, chúng ta cùng thảo luận về một api đó là fetch. Nhưng khi nói về tìm nạp thì chúng ta cũng nên quên rằng có một api cũng rất mạnh và cũng đang là những lập trình viên sử dụng rộng rãi đó là axios. Nhưng để chỉ ra những điểm khác nhau giữa fetch và aixos thì các bạn nên tìm hiểu kỹ, vì mỗi cái áp dụng khác nhau
Phương thức tìm nạp [] nhìn chung rất hiện đại và linh hoạt, chính vì vậy chúng ta sẽ xem qua một số chức năng mà fecth có thể xử lý được. Nhưng lưu ý, tìm nạp[] có thể sẽ không được hỗ trợ với các trình duyệt cũ, nhưng chung thì điều đó không đáng để quan tâm, vì hầu hết chúng ta đều sử dụng các trình duyệt hiện đại hơn.
Trình duyệt hỗ trợ tìm nạp []
Cú pháp tìm nạp api cơ bản
let promise = fetch[url, [options]]
* url – URL để truy cập. * tùy chọn – tham số tùy chọn. phương thức, tiêu đề, v.v.
NHẬN yêu cầu với Fetch API
Ở trường hợp nào mà chúng ta muốn nhận một json tử một API nào đó, trường hợp này thì đa số là mấy thằng làm với REST API
0tiêu đề tùy chỉnh
Có thể thêm tiêu đề nếu muốn
ví dụ
1Gửi thông tin xác thực với Fetch
Để gửi kèm theo thông tin cookie xác thực [người dùng là ai], chúng ta truyền thông tin xác thực tham số. bao gồm
2ghi chú. Ở đây anh ấy thiết lập bất kỳ trình duyệt nào khi sử dụng thông tin đăng nhập. 'bao gồm' bị lỗi này "bị chặn bởi CORS" thì sử dụng thông tin xác thực. "cùng nguồn gốc"
Yêu cầu POST/PUT
3Đăng một HTML
0Dữ liệu được mã hóa biểu mẫu
1Đang tải tệp lên
2Tải lên nhiều tệp
Trên khách hàng là như thế này
3Cách sử dụng
4Thật ra nói cho hay vậy chứ thấy axios ngon hơn nhiều há há, Để lần sau post về axios rồi so sánh cho anh em một phát. Giờ thì test thử xem nó hay thế nào
Anh em nào muốn đọc kỹ hơn thì link đây. https. //ý chính. github. com/justsml/529d0b1ddc5249095ff4b890aad5e801