Гость
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / Почему возникает междоменное общение? - Я его не создавал / 6 сообщений из 6, страница 1 из 1
17.09.2012, 13:14
    #37960212
user7320
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему возникает междоменное общение? - Я его не создавал
Делаю WCF службу, которая хостится в Виндовс-службе. Базовый адрес службы (он же - и для единственной конечной точки):

http://localhost:8000/ClientService/service

Делаю ссылку для браузерного Сильверлайт-приложения на этот адрес (служба хоть и WCF - не по шаблону Silverlight-enabled WCF Service, но настроена как надо для работы с Сильверлайтом - собственно, поставлен простой байндинг http и отключено AspNetCompatibilityRequirements). При попытке воспользоваться этой службой, пишет:

авторCommunicationException

Произошла ошибка при попытке создать запрос к URI " http://localhost:8000/ClientService/service". Это могло быть вызвано попыткой междоменного доступа к службе без наличия приемлемой междоменной политики или с политикой, непригодной службам SOAP. Может понадобиться связаться с владельцем службы для публикации файла междоменной политики и убедиться в том, что она позволяет отправлять заголовки HTTP, связанные с SOAP. Эта ошибка также может быть вызвана использованием внутренних типов в прокси-сервере веб-службы без использования атрибута InternalsVisibleToAttribute. Подробности см. во внутреннем исключении.

Прежде, чем углубиться в файлы междоменных политик , хотелось бы ответа на вопрос.

Что интересно, раньше проект этой службы я делал - всё работало. Но решил переписать с тестового варианта на основной - и возникло такое вот.

Основной вопрос - откуда могло возникнуть междоменное общение? Какие настройки за него отвечают? Моя WCF служба никуда не обращается к другим службам и адресам и ничего не делает, кроме вызова ДЛЛки из той же папки, из которой эта (Windows) служба запускается.

Ещё добавлю, что контракт службы объявлен со следующим атрибутом:

Код: c#
1.
2.
3.
4.
[ServiceContract(Namespace = "http://ClientService")]
    public interface IWcfClientService
    {
       ...



Но, вроде, это пространство имён и базовый адрес не должны совпадать - ни в одном примере на МСДН я этого не видел. Т. е. это не может являться причиной междоменного общения, как я понимаю.
...
Рейтинг: 0 / 0
17.09.2012, 13:20
    #37960223
pation
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему возникает междоменное общение? - Я его не создавал
user7320,
почему бы не разобраться стначало с вопросом : что есть такое междоменное общение?

user7320 Основной вопрос - откуда могло возникнуть междоменное общение? Какие настройки за него отвечают? Моя WCF служба никуда не обращается к другим службам и адресам и ничего не делает, кроме вызова ДЛЛки из той же папки, из которой эта (Windows) служба запускается.

начнём с того, что WCF используется только исключительно для междоменного общения и не для чего иного
...
Рейтинг: 0 / 0
17.09.2012, 13:30
    #37960250
user7320
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему возникает междоменное общение? - Я его не создавал
Эмм, возможно, я не так выразился. Вот тут написано

авторWhen creating a service anywhere other than on the Web site that hosts your Silverlight application, cross-domain issues can arise. Cross-domain calls between Silverlight applications and services present a security vulnerability and must be specifically enabled by an appropriate cross-domain policy. For procedures that describe how to implement such a policy, see Making a Service Available Across Domain Boundaries.

Хмм... Т. е., если адреса хоста Сильверлайт-приложения (мой серверный сайт) и службы (комп клиента) различаются, то это уже междомен? А я думал, это только когда служба обращется к другой службе на другом адресе.

Штука, однако, в том, что такое исключение возникает, даже если я службу хостю на том же компьютере, на котором сайт с СЛ-приложением крутится - т. е. за пределы компа не выхожу. И ещё штука в том, что раньше такого исключения ни возникало, хотя служба отродясь не была по адресу сайта, на котором СЛ-приложение хостится.
...
Рейтинг: 0 / 0
17.09.2012, 13:51
    #37960292
pation
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему возникает междоменное общение? - Я его не создавал
user7320Хмм... Т. е., если адреса хоста Сильверлайт-приложения (мой серверный сайт) и службы (комп клиента) различаются, то это уже междомен?

нет, даже когда они совпадают
...
Рейтинг: 0 / 0
17.09.2012, 13:54
    #37960296
pation
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему возникает междоменное общение? - Я его не создавал
...
Рейтинг: 0 / 0
19.09.2012, 14:30
    #37964137
user7320
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему возникает междоменное общение? - Я его не создавал
Спасибо, теперь понятно.

Я об этих доменах, оказывается, ещё с самого начала изучения СиШарпа читал. Но потом как-то всё забылось - никогда за пределы одного домена не вылазил, чтобы такие сообщения об ошибках повялялись.

Кстати, кому интересно, как предоставить файл clientaccesspolicy.xml, нужный для разрешения междоменного общения, при разных вариантах размещения службы, то вот пост, где ссылки приведены:

http://stackoverflow.com/questions/1371767/where-to-place-clientaccesspolicy-xml-in-silverlight-project/1371976#1371976
...
Рейтинг: 0 / 0
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / Почему возникает междоменное общение? - Я его не создавал / 6 сообщений из 6, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]