2

在我的silverlight應用程序中我正在使用webBrowser控件。Silverlight window.external.notify()安全性問題?

我在導航到的頁面上調用以下javascript函數。

function notify() { 
     window.external.notify("Close"); 
    } 

怪異的事實是,它只有當我使用導航頁面的工作原理:

this.Browser.Source = new Uri("http://localhost/TestOutOfBrowser.Web/HTMLPage1.htm"); 

當我使用真正的服務器名稱找到它:

  this.Browser.Source = new Uri("http://testServerName/TestOutOfBrowser.Web/HTMLPage1.htm"); 

我在執行window.external.notify(「Close」)時收到一個javascript異常('Unspecified error。');線。

這是最有可能的安全相關的,但我沒有線索如何解決這個問題..

我怎樣才能得到這個工作?

+0

你在哪裏託管你的xap文件? – Denis 2010-10-07 19:20:45

+0

我正在使用IIS 7.5來託管應用程序。我只是在本地進行測試。 (VS 2010,Silverlight 4) – Stephane 2010-10-08 07:20:50

回答

2

對於任何面臨相同或相似的問題:

Appearantly這是一個跨域腳本安全問題。 如果Silverlight應用程序的域和頁面(您正在導航到)不同,瀏覽器控件將不會執行此操作。 (!甚至127.0.0.1和localhost被評估爲'不同'域)

我結束了使用相對URI瀏覽到頁面,這解決了我的問題。

Grtz