none
Problema en cliente de Twitter con Silverlight RRS feed

  • Pregunta

  • Hola a todos:

    Me encuentro desarrollando una sencilla aplicación que consuma el servicio web de Twitter para publicar los tweets de un usuario. El código es pequeño así que lo comparto a continuación:

    private void btn1_Click(object sender, RoutedEventArgs e)
        {
          path = @"http://api.twitter.com/1/statuses/user_timeline.xml?screen_name=" + this.txtUsuario.Text;
    
          WebClient wCliente = new WebClient();
          wCliente.DownloadStringCompleted +=new DownloadStringCompletedEventHandler(wCliente_DownloadStringCompleted);
          wCliente.DownloadStringAsync(new Uri(path));
        }
    
        void wCliente_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs args)
        {
          try
          {
            XElement xmlTweets = XElement.Parse(args.Result);
           
            MessageBox.Show(xmlTweets.ToString());
          }
          catch(Exception error)
          {
            MessageBox.Show(error.ToString());
          }
    

     Como verán solo para probar la idea es imprimir el XML a través de un MessageBox. Ahora el problema está en que al ejecutar la aplicación aparece un mensaje de error que comparto una parte a continuación:

    $exception {System.Reflection.TargetInvocationException: Excepción durante la operación. El resultado no es válido. Compruebe la excepción InnerException para obtener más detalles. ---> System.Security.SecurityException ---> System.Security.SecurityException: Error de seguridad.

       en System.Net.Browser.BrowserHttpWebRequest.InternalEndGetResponse(IAsyncResult asyncResult)..........

    A simple vista noté que al ser una excepción de seguridad tendría que ver con el ClientAccessPolicy pero no deberia de ser problema porque lo tengo en la raíz de mi sitio web y configurado igual que el de Tim Heuer:

    <?xml version="1.0" encoding="utf-8" ?>
    <access-policy>
     <cross-domain-access>
      <policy>
       <allow-from http-request-headers="SOAPAction,Content-Type">
        <domain uri="http://*"/>
        <domain uri="https://*" />
       </allow-from>
       <grant-to>
        <resource include-subpaths="true" path="/"/>
       </grant-to>
      </policy>
     </cross-domain-access>
    </access-policy>
    

    No se que es lo que estoy haciendo mal que provoca este error. De antemano muchas gracias por su ayuda.

     

    Saludos.

    domingo, 27 de marzo de 2011 2:47

Todas las respuestas