2016-02-19 7 views
9

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

+0

Servono anche richieste 'option'? –

+0

No, solo 'GET'. – Peterdeka

+0

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. –

risposta

1

funzionare il vostro cromato con questo comando chrome.exe --disable-web-security dovrebbe sbarazzarsi dei problemi di cross-origine

I avere una scorciatoia di Chrome e questo è l'obiettivo:

"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --disable-web-security

Problemi correlati