Semble être une chose simple en utilisant un objet WebClient pour récupérer le contenu d'un fichier texte dans une application Web Silverlight.Utilisation de Silverlight 4 WebClient OpenReadCompleted via Security Exceptions sur le serveur Web hébergé. Quel est le pronoblème?
Il fonctionne dans notre configuration intranet sur un serveur local, mais lorsqu'il est déployé sur un serveur hébergé "hostgator", WebClient reçoit une exception de sécurité. Suite à des suggestions de nombreux blogs Web, j'ai essayé la politique d'accès crossdomain et crossdomain.xml sans résultat - pas étonnant, tous sur le même domaine.
private void LoadCSVFile(string csvFile)
{
try
{
WebClient client = new WebClient();
client.OpenReadCompleted += new OpenReadCompletedEventHandler(client_OpenReadCompleted);
client.OpenReadAsync(new Uri(csvFile, UriKind.Absolute));
}
catch (Exception ex)
{
string errorMessage = String.Format("Ex accessing csv: {0}\n{1}", csvFile,
}}
// le csvFile est un chemin absolu: http://myserver.com/myapplication:port/sourcefiles/file.csv // Le SourceFiles est un répertoire virtuel dans le même site contenant des fichiers csv
void client_OpenReadCompleted(object sender, OpenReadCompletedEventArgs e)
{
if (e.Error == null)
{
try
{
using (System.IO.StreamReader reader = new System.IO.StreamReader(e.Result))
{
mainFileData = new List<string>();
string line;
}
}
catch (Exception ex)
{
string errorMessage = ex.InnerException;
} else { "ici est l'endroit pour l'exception !!!!!!!, donc, e.Error n'est pas nul" } }
Le texte de l'exception lit: System.SecurityException: erreur de sécurité à System.Net.Browser.BrowserHttpWebRequest.InternalEndGetResponse (IAsyncResult asyncResult), etc.
Passez 2 jours gooogling sans résultat.
Aidez-nous s'il vous plaît. V
Ken, merci pour votre réponse: (1) l'url complète = myworks.com/$ sitepreview/myworks.com: 8091/sourcefiles/file1.csv. - oui, juste une faute de frappe (2) sur l'intranet j'accède aux fichiers sur le port 8091 très bien. (3) voici quelque chose. Comment demander au serveur de saisir le type de fichier "cvs"? – val
Ken, merci encore, vous m'avez donné un indice et je viens de résoudre le problème. J'ai simplement dû mettre le répertoire virtuel pour accepter les scripts - c'était la cause de l'exception de sécurité. À votre santé – val