silverlight-4.0 – Silverlight SecurityException

我正在将数据发布到服务器并成功执行BeginGetRequestStream,然后是EndGetRequestStream,将我的POST数据写入填充RequestStream,并调用BeginGetResponse.

BeginGetResponse成功返回,然后我调用:

Dim response As HttpWebResponse = CType(MyHttpRequest.EndGetResponse(asynchronousResult),HttpWebResponse)

此行抛出以下SecurityException错误:

{System.Security.SecurityException —> System.Security.SecurityException: Security error.
at System.Net.Browser.BrowserHttpWebRequest.InternalEndGetResponse(IAsyncResult asyncResult)
at System.Net.Browser.BrowserHttpWebRequest.<>c__DisplayClass5.b__4(Object sendState)
at System.Net.Browser.AsyncHelper.<>c__DisplayClass2.b__0(Object sendState)

— End of inner exception stack trace —
at System.Net.Browser.AsyncHelper.BeginOnUI(SendOrPostCallback beginMethod,Object state)
at System.Net.Browser.BrowserHttpWebRequest.EndGetResponse(IAsyncResult asyncResult)
at EtsyV2NetSL.WebQuery.POST_ResponseCallback(IAsyncResult asynchronousResult)}

所以我的第一个想法是我被服务器用clientaccesspolicy.xml或crossdomain.xml阻止.我已经解雇了Fiddler并看到了以下内容:

GET http://openapi.etsy.com/clientaccesspolicy.xml > 596 (text/xml)
GET http://openapi.etsy.com/crossdomain.xml > 200 OK (application/xml)

所以我检查了他们的crossdomain.xml,设置显示正常:

<!DOCTYPE cross-domain-policy SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy>
   <allow-access-from domain="*"/>
</cross-domain-policy>

我试图解决这个问题已经走到了尽头.我在VS的开发机器上运行测试应用程序.

有没有人有任何想法为什么Silverlight会抛出这个错误?

谢谢

解决方法

看起来这是客户端访问策略问题,请检查:

http://forums.silverlight.net/forums/p/26566/90867.aspx

它对我有用.

相关文章

如何在Silverlight4(XAML)中绑定IsEnabled属性?我试过简单的...
我正在编写我的第一个vb.net应用程序(但我也会在这里标记c#,...
ProcessFile()是在UIThread上运行还是在单独的线程上运行.如...
我从同行那里听说,对sharepoint的了解对职业生涯有益.我们不...
我正在尝试保存一个类我的类对象的集合.我收到一个错误说明:...
我需要根据Silverlight中的某些配置值设置给定控件的Style.我...