2015-02-10 49 views
2

當我在頁面上打開iframe中的angularjs應用程序時,所有瀏覽器上的所有工作都正常。但隨後在Firefox中,如果我刷新使用Ctrl + F5我得到這個非常討厭的錯誤開始nsresult:「0x80004005的(NS_ERROR_FAILURE)」的位置:「JS框架」 ......Firefox:iframe中的AngularJS應用程序拋出nsresult:「0x80004005(NS_ERROR_FAILURE)」出錯

請看圖片:(不知道你可以實際上可以讀取它) error

你可以測試你的自我,打開鏈接https://www.ipushpull.com/embed/SCAR/Alpine在Firefox中,你應該看到登錄表單,按CTRL + F5,你應該看到的錯誤。

其他瀏覽器都很好。

我看過其他一些討論,有人提到這可能是因爲CORS請求(我正在使用),我不認爲可能是因爲其他請求在同一頁面上的firefox中正常工作(當您打開它的頁面時請求到api,返回它應該返回的內容)

其他提到它與窗口歷史有關,這可能是因爲一旦你到達該鏈接並且API返回403,它會將你重定向到uri#/ user/login ,但我沒有找到任何解決辦法,我可以嘗試與歷史。

任何想法?非常感謝

更新

我看你能不能打通形象,這裏是 「全分辨率」:http://i.stack.imgur.com/7SYQ8.jpg

更新2

  1. 這不是由於CORS問題。我在整個站點使用CORS時沒有問題,甚至在同一頁面上還有其他的CORS請求,並且它們工作正常。

  2. 這不是由任何adblock/popupblock插件引起的,我試過在完全擦除瀏覽器。

  3. 使用非縮小角度進行調試 - 事實上,我認爲這對調試沒有任何影響(因爲我對角度有信心),但是問題是什麼。如果我更改爲未縮小角度錯誤不會發生 ..任何想法?

+1

我真的不喜歡網站,不讓你點擊後退按鈕。下面是一個「完整的」rez文件的正確鏈接:http://i.stack.imgur.com/7SYQ8.jpg – Ronnie 2015-02-10 17:15:38

+0

@Ronnie其實這基本上是嵌入到你的網站的小部件。所以導航純粹是由應用程序完成的。我只是給了直接鏈接,所以你可以全屏看到它。 – Tom 2015-02-10 17:18:22

+0

@羅尼耶斯連Dropbox鏈接都不起作用? ...感謝您的鏈接,將編輯的問題,或者我會再次上傳到imgur – Tom 2015-02-10 17:19:41

回答

0

如果您沒有聲明服務依賴項列表(在數組中),然後是函數本身,那麼在AngularJS中縮小會導致問題。不過,我翻看了你的代碼,看起來你已經覆蓋了它。我可能在這裏錯過了一些東西,所以最好多留一次以防萬一。

另一方面,它可能是錯誤的否定。在所有依賴js文件完全加載之前刷新頁面時,我在Chrome中也遇到了一些錯誤。由於您擁有Firebug Persist模式,因此有些請求不會被取消,並會導致溢出exception,就像附加圖像中的第3個一樣。

所以對於這個錯誤,如果你關掉手錶,它們應該消失。

+0

Minification是一個通用的Angular JS陷阱,但在這裏並不相關(會導致模塊注入錯誤,而不是像本文討論的那樣)。 – munsellj 2015-04-15 15:59:37

1

我遇到了類似的問題,試圖在iframe中使用history.pushState(Ember Router location: 'history'路由方法)來打開Ember應用程序。在Firefox中進行硬刷新(Mac上的cmd + shift + r或Windows上的ctrl + f5)時,該問題纔會出現。這個問題只發生在我的FireFox中,在Chrome和Safari中使用類似的硬刷新效果很好。我還驗證了這個問題,我也在FireFox的iframe中使用$ locationProvider html5mode(它也使用了下面的history.pushState)打開一個Angular JS應用程序。

第一次導航到頁面或正常刷新頁面時(cmd + r Mac,f5 Windows),我不會發生此問題。我發現很多看似與Bugzilla有關的Mozilla,但很多都很接近。這似乎代表了我所擁有的同樣的問題,並且仍然是Firefox的最新版本(在撰寫本文時爲v37.0.1)。

https://bugzilla.mozilla.org/show_bug.cgi?id=1003100

在使用基於散列的路由的iframe開幕要麼灰燼或角應用程序(或任何技術......)似乎是圍繞一個可行的工作現在。我無法使用任何框架的基於散列的路由方法來重現此問題。

+0

這似乎已經在angularJs 1.4上解決了。我只在版本1.2.7上得到這種錯誤 – albanx 2015-09-18 12:54:23

相關問題