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 "risposta non valida" quando img.crossOrigin = "Anonymous"
ho bisogno per consentire origine croce per questo flusso MJPEG come l'utente deve essere in grado di catturare l'immagine con un pulsante e senza CORS le la tela è contaminata
Sono in difficoltà con questo problema in FF e Chrome (IE utilizza una sorgente video diversa in quanto non supporta MJPEG).
Il mio server restituisce anche il Access-Control-Allow-Origin: *
quando serve la pagina. L'immagine src
viene impostata in Javascript (se ciò potrebbe essere correlato) dopo aver impostato img.crossOrigin = "Anonymous";
. Se rimuovo lo crossOrigin="Anonymous"
, il flusso viene caricato ma ottengo l'errore di canvas contaminato.
Grazie edit: dal wireshark, la richiesta 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
Servono anche richieste 'option'? –
No, solo 'GET'. – Peterdeka
In caso di browser CORS effettua 2 richieste: primo 'OPTIONS pre-volo 'e solo se tutte le intestazioni sono impostate correttamente segue la richiesta corretta. Date un'occhiata [qui] (https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS) per la descrizione dettagliata. –