У меня есть сайт, написанный на Delphi, который должен получать данные из веб-службы .NET. Чтобы использовать веб-службу, я сначала присоединяюсь к веб-сайту .NET, который содержит мастер, который должен заполнить конечный пользователь, который, в свою очередь, затем вызывает веб-службу для заполнения раскрывающихся списков AJAX и вернуть данные в вызывающее веб-приложение Delphi.
Итак, чтобы быть ясным ...
- Веб-сайт Delphi открывает веб-сайт .NET
- Веб-сайт .NET заполняет раскрывающиеся списки AJAX из веб-службы .NET
- Когда пользователь нажимает кнопку "Отправить" в веб-мастере .NET, он вызывает веб-сервис .NET для получения данных и возвращается на веб-сайт Delphi.
Однако вызов веб-службы .NET для заполнения раскрывающихся списков приводит к тому, что IE6 (и даже все браузеры) воспринимают это как междоменную угрозу безопасности, и я получаю сообщение «Эта страница имеет доступ к информации, которая не находится под ее контролем. создает угрозу безопасности ... "ошибка.
Код для раскрывающихся списков следующий (на случай, если это поможет) ...
В файле .apsx
<asp:DropDownList ID="DocCategoryDropDown"
runat="server"
OnSelectedIndexChanged="DocCategoryDropDown_SelectedIndexChanged"
AutoPostBack="true">
</asp:DropDownList>
<ajaxToolkit:CascadingDropDown ID="DocCategoryCascadingDropDown"
runat="server"
TargetControlID="DocCategoryDropDown"
LoadingText="[Loading...]"
Category="CategoryId"
UseContextKey="True"
ContextKey="NY"
PromptText="Select a Category"
ServiceMethod="GetDocCategory"
ServicePath="tba">
</ajaxToolkit:CascadingDropDown>
в файле C #
DocCategoryCascadingDropDown.ServicePath = path;
Если путь находится на том же сервере, что и веб-сайт, он работает нормально, но если путь не указан, я получаю предупреждение, поэтому это должно быть проблемой безопасности между доменами.
У меня раньше были похожие проблемы с веб-службами Java, и я решил эту проблему, используя прокси-серверы на Apache, чтобы веб-сайт, на котором размещен мастер и веб-служба, существовал в одном домене и поэтому прекратил ошибки.
Может кто-нибудь сказать мне, как я могу сделать то же самое в IIS, пожалуйста?
Если есть еще какая-то информация, которую я могу предоставить, пожалуйста, дайте мне знать, поскольку я действительно хотел бы решить эту проблему, как только смогу.
Большое спасибо заранее.