2010-11-01 98 views
2

我有幾個WCF服務。 當我檢查他們在服務器上(例如:ServiceTest.svc?wsdl),比我看到一個XML文件與關於wcf服務的信息。所以這些服務工作正常。WCF Silverlight跨域問題

我在不同的服務器上有一個Silverlight應用程序。 我得到'着名'跨域錯誤。 當我將一個clientaccesspolicy.xml放入WCF服務所在的目錄中時,問題仍然存在。

共享主機有沒有可能安全性不夠高?

感謝,

菲利普

回答

2

XML文件必須被放置在域的根。通常您必須將它們放入inetpub/wwwroot文件夾中,而不是放入具有WCF服務的文件夾中。

根據您的提供者如何實現共享託管,恐怕您必須要求他們支持跨域訪問並將XML文件放入根目錄。

我不確定,但我認爲它也可以工作註冊你自己的域,指向你想用作根的文件夾,並把XML文件放在那裏。然後,客戶端必須使用服務器URL和您註冊的域名。

+0

它的工作原理是將xml文件放在主機的根目錄下 – Filip 2010-11-01 15:46:08

1

像這樣的問題的最佳工具之一是Fiddler(或其他一些網絡調試代理)。查看網絡調用,您可以看到瀏覽器正在查找clientaccesspolicy.xml文件的地址,然後確保將該文件放在該位置。如果你沒有看到這個電話,或者你看到它,並且該文件已經存在,你可以繼續處理其他問題(web服務或調用代碼中的錯誤)。