Sto postando dati a un server ed eseguo correttamente BeginGetRequestStream, quindi EndGetRequestStream, scrive i miei dati POST per riempire il RequestStream e chiama BeginGetResponse.Silverlight SecurityException
BeginGetResponse ritorna con successo e ho quindi chiamare:
Dim response As HttpWebResponse = CType(MyHttpRequest.EndGetResponse(asynchronousResult), HttpWebResponse)
Questa linea genera l'errore folloing 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)}
Così il mio primo pensiero è stato che ero stato bloccato dal server con il loro clientaccesspolicy .xml o crossdomain.xml. Ho sparato su Fiddler e ho visto il seguente:
GET http://openapi.etsy.com/clientaccesspolicy.xml > 596 (text/xml)
GET http://openapi.etsy.com/crossdomain.xml > 200 OK (application/xml)
così ho controllato la loro crossdomain.xml e le impostazioni appaiono ok:
<!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>
ho colpito un vicolo cieco per cercare di risolvere questo problema. Sto eseguendo l'app di test sulla mia macchina di sviluppo da VS.
Qualcuno ha qualche idea sul motivo per cui Silverlight avrebbe lanciato questo errore?
Grazie
Sì, l'istruzione "" - nel file clientaccesspolicy.xml ha risolto il problema nel mio caso. Grazie per l'aiuto! –