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 „nieprawidłową odpowiedź”, gdy img.crossOrigin = „Anonymous”
muszę pozwolić pochodzenie przekrój dla tego strumienia MJPEG jako użytkownik musi być zdolny do przechwytywania obrazu z jednego przycisku i bez tych CORS płótno jest skażone.
Mam problem z tym problemem w FF i Chrome (IE używa innego źródła wideo, ponieważ nie obsługuje MJPEG).
Mój serwer zwraca również Access-Control-Allow-Origin: *
podczas serwowania strony. Obraz src
jest ustawiany w JavaScript (jeśli to może być powiązane) po ustawieniu img.crossOrigin = "Anonymous";
. Po usunięciu crossOrigin="Anonymous"
strumień zostanie załadowany, ale wystąpi błąd związany z plamami na płótnie.
Dzięki edit: z Wireshark, wniosek 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
Czy obsługujesz również żądania "opcji"? –
Nie, po prostu 'GET'. – Peterdeka
W przypadku przeglądarki CORS wykonuje 2 żądania: pierwsze "OPCJE" przed lotem i tylko wtedy, gdy wszystkie nagłówki są prawidłowo ustawione, następuje prawidłowe żądanie. Zajrzyj [tutaj] (https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS), aby uzyskać szczegółowy opis. –