Dopo aver installato SSL Cert in una pagina Web, ho riscontrato il problema per cui la pagina pubblicata con https richiederebbe l'endpoint http con ajax. Sto usando restangular e ho cambiato l'URL di base per avere https.MixedContent quando sto caricando la pagina https tramite ajax, ma il browser continua a pensare che sia http
var uri = location.protocol + "//" + location.host;
RestangularProvider.setBaseUrl(uri);
La parte interessante è che, quando vedo la richiesta negli strumenti di Chrome per sviluppatori vedo
Request URL:https://theaddress.com/api/endpoint
Request Headers
Provisional headers are shown
Accept:application/json, text/plain, */*
Referer:https://theadress.com/somepage
User-Agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/40.0.2214.93 Safari/537.36
X-Requested-With:XMLHttpRequest
Quindi la richiesta dovrebbe essere un https uno, ma ho ancora ottenere:
Mixed Content: The page at 'https://theaddress.com/somepage' was loaded over HTTPS, but requested an insecure XMLHttpRequest endpoint 'http://theadress.com/api/endpoint'. This request has been blocked; the content must be served over HTTPS.
Inoltre, dovrei menzionare, questo succede sul server prod, ma sul mio test locale funziona bene (ho autofirmato ssl cert) dopo averlo fatto usare l'url di base che include https.
Quale potrebbe essere il problema?
Qual è la risposta dalla richiesta 'https'? Forse c'è un reindirizzamento HTTP 302 all'endpoint 'http'? –
È normale JSON con 200 Response. Nessun reindirizzamento. – spiroski