RestSharp в приложении Silverlight 4 не работает - PullRequest
1 голос
/ 11 февраля 2012

Я использую RestSharp в приложении Silverlight 4, и, похоже, он не работает. Он всегда возвращает мне ОШИБКУ с System.Security.SecurityException.

    try
    {
        client.ExecuteAsync(request, (response) =>
        {
            if (response.ResponseStatus == ResponseStatus.Error)
            {
                Debug.WriteLine(response.ResponseStatus);
            }
            else if (response.ResponseStatus == ResponseStatus.Completed)
            {
               Debug.WriteLine(response.Content);
            }
        });
    }
    catch(System.Security.SecurityException e)
    {
        Debug.WriteLine("Exception : " + e.Message);
    }

Ответы [ 2 ]

2 голосов
/ 07 марта 2012

Silverlight нужен файл clientaccesspolicy.xml в корневом каталоге всех серверов, с которыми вы хотите установить связь.

Если вы просто хотите разрешить общение с любым клиентом, вы можете использовать следующий пример:

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

Так как любой другой не-Silverlight клиент может получить доступ к вашему сервису в любом случае, я бы не стал тратить время на его дальнейшую настройку, а просто выбрал общий.

1 голос
/ 05 сентября 2012

Была такая же проблема - добавление работы clientaccesspolicy.xml.

Я добавил файл в свой проект WCF в VS в той же папке, где хранятся файлы .SVC.

...