Как создать/получить междоменную политику для службы iis7 wcf?
-
19-09-2019 - |
Вопрос
Недостающее звено в моем приложении IIS7 + Silverlight 3.0 + WCF Service — это междоменная политика.Есть ли какие-нибудь инструкции, как создать/получить такую политику.Я понимаю, что есть два XML-файла, которые нужно разместить в корневом каталоге приложения.Что в них вводить, как их форматировать, существует ли какой-то шаблон, в котором указано, какие поля необходимо заполнить?Есть ли где-нибудь на msdn инструкции, объясняющие, как это сделать?У меня почти закончились возможные термины для запроса в Google, любые указатели будут оценены по достоинству.
Спасибо, Брайан
Решение
Silverlight ищет clientaccesspolicy.xml (специфичный для silverlight), если он не найден, он возвращается к файлу crossdomain.xml, который также может использоваться, например, с помощью Flash.Вам понадобится только один из них (сокеты работают только с clientaccesspolicy.xml, но веб-клиент и http работают с обоими).
Давайте пока остановимся на clientaccesspolicy.xml, так как здесь меньше предостережений, а поддержка crossdomain.xml была добавлена только для того, чтобы догнать Flash, поскольку она уже есть у общедоступных сервисов, таких как flickr.
DTD, включая описание clientaccesspolicy.xml, находится по адресу эта страница в MSDN
этот базовый пример должен помочь вам начать
<?xml version="1.0" encoding="utf-8"?>
<access-policy>
<cross-domain-access>
<policy>
<allow-from>
<domain uri="*"/> <!-- Allows calls from every domain -->
</allow-from>
<grant-to>
<resource path="/api" include-subpaths="false"/> <!-- Only allows domain/api? to be called nothing else including api.txt, api/foo etc... -->
</grant-to>
</policy>
</cross-domain-access>
</access-policy>
Другие советы
Что ж, я думаю, что это может быть ответом, но другие ответы, безусловно, приветствуются для обсуждения, особенно.так как мы все равно пока не можем закрыть тему...