2011-05-21 47 views
1

我正在Ubuntu 11.04上開發一個Rails 3應用程序,當我嘗試執行ajax post請求時,我得到以下瀏覽器對話框。服務器localhost:3000 at應用程序需要用戶名和密碼

的服務器localhost:3000在應用程序需要用戶名和密碼

所有其他網頁加載的罰款。這隻發生在ajax調用時。我使用Mongrel作爲rails開發服務器。

有關如何解決此問題的任何想法,使對話框不會出現?

+0

你有沒有到位的驗證系統? application.rb中是否有任何可能導致您的應用程序如此操作的內容?這可能是從_application.js_或一些_js.erb_文件觸發的ajax回調? – stephenmurdoch 2011-05-21 19:51:40

+0

是的,我使用Devise,但用戶已經被認證。 – Paul 2011-06-15 11:00:57

回答

0

事實證明,這個問題是由rails 3.0.4中引入的安全補丁引起的。 (More info here

所有我需要做的是捆綁更新jQuery的軌道,然後運行軌產生的jQuery:安裝

0

當使用Devise gem將未經身份驗證的用戶重定向到登錄操作時,我遇到了同樣的問題。

只有部分Internet Explorer用戶報告此問題。我相信IE會嘗試自動顯示對話框來處理認證。

解決方案是要求用戶訪問登錄網址,而不是應用程序url。

例如,不要訪問網址http://www.myapp.com/,要求用戶訪問網址http://www.myapp.com/login

讓我知道它是否有幫助!

+0

不幸的是,這是不是我的情況,因爲用戶已經登錄。 – Paul 2011-06-15 11:00:03

相關問題