1. 程式人生 > >快速解決AngularJS 中的 Cross origin requests are only supported for HTTP

快速解決AngularJS 中的 Cross origin requests are only supported for HTTP

寫directive時在chrome上碰到了這個問題,寫出解決方法供參考。

如果你的directive中引用過外部的html檔案,像這樣 templateUrl = './views/template.html'. 那麼當你直接在本地開啟你的html文件, file:///C:/xampp/htdocs/IsolateScope/nodepad.html , chrome就會告訴你這個錯誤。

先說解決方法吧,既然這個錯誤的原因是由於本地開啟html文件,那麼我們把這個文件放在HTTP伺服器上不就好了。那麼是不是又要去谷歌一下怎麼安裝Apache,安裝後怎麼配置呢?

既然要快速解決這個問題,那麼我們就得用快一點的安裝辦法,所以就直接安裝XAMPP吧。

現在APACHE就安裝好了。

然後將你的AngularJS應用放入APACHE上就可以了。放在哪裡呢?

你可以在XAMPP的安裝路徑下找到一個HTDOCS資料夾。就是這裡了。

那麼chrome上為什麼會發生這個錯誤呢?

具體原因請參考這裡。簡單說來,就是在我們的應用裡,任何時候都不能通過file:///這種方式去獲取資源,必須通過http://. 這樣可以增加我們應用的安全性。