Image from origin 'http://192.168.1.67:5555' has been blocked from loading by Cross-Origin Resource Sharing policy: Invalid response. Origin 'http://127.0.0.1:8000' is therefore not allowed access.
Chrome MJPEG CORS "phản ứng không hợp lệ" khi img.crossOrigin = "Ẩn danh"
tôi cần phải cho phép nguồn gốc chéo cho dòng MJPEG này như là người dùng phải có khả năng chụp ảnh với một nút và không CORS sự vải bị nhiễm độc.
Tôi đang gặp khó khăn với vấn đề này trong FF và Chrome (IE sử dụng nguồn video khác vì không hỗ trợ MJPEG).
Máy chủ của tôi cũng trả về Access-Control-Allow-Origin: *
khi phục vụ trang. Hình ảnh src
đang được đặt trong Javascript (nếu có thể có liên quan) sau khi đặt img.crossOrigin = "Anonymous";
. Nếu tôi xóa crossOrigin="Anonymous"
, luồng sẽ tải nhưng tôi sẽ gặp lỗi canvas bị nhiễm độc.
Cảm ơn chỉnh sửa: từ Wireshark, yêu cầu MJPEG:
GET /2d HTTP/1.1 Host: 192.168.1.67:5555 Connection: keep-alive Accept: image/webp,image/*,*/*;q=0.8 Origin: http://127.0.0.1:8000 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2564.109 Safari/537.36 Referer: http://127.0.0.1:8000/ Accept-Encoding: gzip, deflate, sdch Accept-Language: en-US,en;q=0.8,it;q=0.6,pt;q=0.4
HTTP/1.0 200 OK Access-Control-Allow-Origin: * Access-Control-Allow-Methods: GET Access-Control-Allow-Headers: Content-Type Content-Type: multipart/x-mixed-replace; boundary=--myboundary
Bạn có đáp ứng yêu cầu 'tùy chọn' không? –
Không, chỉ cần 'GET'. – Peterdeka
Trong trường hợp trình duyệt CORS thực hiện 2 yêu cầu: trước tiên là chuyến bay 'OPTIONS' và chỉ khi tất cả các tiêu đề đặt đúng yêu cầu thích hợp sau. Hãy xem [tại đây] (https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS) để biết mô tả chi tiết. –