Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Как загрузить произвольный xml?
|
|||
|---|---|---|---|
|
#18+
Используется Silverlight, класс WebClient, пытаюсь загрузить любой внешний публично доступный xml-файл, например: http://google.ru/crossdomain.xml. Загружаю в строку и в дальнейшем как-то использую. При обращении к входящему потоку в e.Result, возникает исключительная ситуация SecurityException. Это происходит из-за запрета по умолчанию кросс доменного доступа и решается с помощью помещения clientaccesspolicy.xml в корень папки с веб-сервером. Т.е. я помещаю xml-файл с политикой кросс доменного доступа в корень локального сервера, который стартует вместе с SL. Это не решает проблему, вызывается все то же исключение. Кроме WebClient\HttpWebRequest можно также использовать службы. Но напрямую через http должно быть проще и, опять же, с классами работать проще. Пробовал использовать WebClient\HttpWebRequest классы в WinForms - были проблемы только с кодировкой. Код Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. SecurityExceptionSystem.Reflection.TargetInvocationException: Неправильный результат из-за исключения, возникшего во время операции. См. описание исключения в InnerException. ---> System.Security.SecurityException ---> System.Security.SecurityException: Ошибка безопасности. в System.Net.Browser.BrowserHttpWebRequest.InternalEndGetResponse(IAsyncResult asyncResult) в System.Net.Browser.BrowserHttpWebRequest.<>c__DisplayClass5.b__4(Object sendState) в System.Net.Browser.AsyncHelper.<>c__DisplayClass2.b__0(Object sendState) --- Конец трассировки стека внутреннего исключения --- в System.Net.Browser.AsyncHelper.BeginOnUI(SendOrPostCallback beginMethod, Object state) в System.Net.Browser.BrowserHttpWebRequest.EndGetResponse(IAsyncResult asyncResult) в System.Net.WebClient.GetWebResponse(WebRequest request, IAsyncResult result) в System.Net.WebClient.OpenReadAsyncCallback(IAsyncResult result) --- Конец трассировки стека внутреннего исключения --- в System.ComponentModel.AsyncCompletedEventArgs.RaiseExceptionIfNecessary() в System.Net.OpenReadCompletedEventArgs.get_Result() в SilverlightApplication8.MainPage.wc_OpenReadCompleted(Object sender, OpenReadCompletedEventArgs e) clientaccesspolicy.xml Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. Проект прилагаю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2010, 18:52 |
|
||
|
Как загрузить произвольный xml?
|
|||
|---|---|---|---|
|
#18+
Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2010, 18:59 |
|
||
|
Как загрузить произвольный xml?
|
|||
|---|---|---|---|
|
#18+
Compositum, Разумеется, но для этого файл xml должен входить в xap-пакет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2010, 20:30 |
|
||
|
Как загрузить произвольный xml?
|
|||
|---|---|---|---|
|
#18+
авторЭто происходит из-за запрета по умолчанию кросс доменного доступа и решается с помощью помещения clientaccesspolicy.xml в корень папки с веб-сервером. Т.е. я помещаю xml-файл с политикой кросс доменного доступа в корень локального сервера, который стартует вместе с SL. Это не решает проблему, вызывается все то же исключение. Вот здесь ошибка - нужно размещать файл политики доступа на целевом сервере, а не на локальном. Заработало. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2010, 21:15 |
|
||
|
|

start [/forum/topic.php?fid=21&msg=36958085&tid=1442589]: |
0ms |
get settings: |
8ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
54ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
43ms |
get tp. blocked users: |
1ms |
| others: | 17ms |
| total: | 151ms |

| 0 / 0 |
