XBAP на обратном прокси

У нас есть XBAP с полным доверием, подписанный кодом. Он отлично работает с обычным веб-сайтом SSL с SSL. Но когда он работает за обратным прокси-сервером, он не загружается.

Он просто говорит: (400) Неверный запрос. У вас есть идеи?

Спасибо.

Полная информация об ошибке ниже:

Версия для версии платформы Windows: 6.1.7601.65536 (Win32nt) Обычный язык Runtime: 4.0.30319.18444 System.deployment.dll: 4.0.30319.34244 Создан: 4.0.302RTMGDR CLR.dll: 4.0.30319.18444 Построен: FX451RTMGDR DFDLL.dll: 4.0.30319.34244 автор: FX452RTMGDR dfshim.dll: 4.0.41209.0 (Main.041209-0000)

URL ИСТОЧНИКОВ Развертывание: (веб-сайт SSL) /VrWeb/XBAP/Netsmart.VR.XBAP.xbap?.ADAuthCookie=A19128BE536C0F169406543CF67A57010F530A91107DCA648BF21D33107B728082815EBD74F65890A386DBF9CE68959DE5FAF7D765DAB75D404F9F0CCCE6FA791E1595FF5942C37FE46B4098E0D4126491A5C3701AF132E2AAA1DDC9D5DFFBD893A43C6149D7F9E62120BD0125FC6C97B1ED3E16E39BE7E49B40BCD66C18945F

Идентификатор развертывания: Netsmart.VR.XBAP.xbap, версия = 2.0.1.1213, культура = нейтральная, PublicKeyToken = 0d8e13e75f96a245, CPUArchitecture = msil

РЕЗЮМЕ ПРИМЕНЕНИЯ * Онлайн-приложение только. * Установлен параметр Trust URL. ОБЗОР ОШИБОК Ниже приводится сводка ошибок, сведения об этих ошибках перечислены позже в журнале. * Исключение при загрузке манифеста. Были обнаружены следующие сообщения об ошибках: + Загрузка (веб-сайт SSL) / VrWeb / XBAP / (X (1) F (A19128BE536C0F169406543CF67A57010F530A91107DCA648BF21D33107B728082815EBD74F65890A386DBF9CE68959DE5FAF7D765DAB75D404F9F0CCCE6FA791E1595FF5942C37FE46B4098E0D4126491A5C3701AF132E2AAA1DDC9D5DFFBD893A43C6149D7F9E62120BD0125FC6C97B1ED3E16E39BE7E49B40BCD66C18945F)) / AppFiles / Netsmart.VR.XBAP_2_0_1_1213 / Netsmart.VR.XBAP.exe.manifest не удалось . + Удаленный сервер вернул ошибку: (400) Bad Request.

COMPONENT STORE TRANSACTION FAILURE SUMMARY Ошибки транзакции не обнаружены.

ПРЕДУПРЕЖДЕНИЯ Во время этой операции предупреждений не было.

СТАТУС ВЫПОЛНЕНИЯ ОПЕРАЦИИ Информация об этапах отсутствует.

ДЕТАЛИ ТРАНЗАКЦИИ ХРАНИЛИЩА КОМПОНЕНТОВ Информация о транзакции недоступна.

Оказалось, что проблема заключалась в том, что нам нужно закодировать нашу строку запроса в манифест, чтобы передать информацию аутентификации в XBAP, как описано здесь. Проблема в том, что обратный прокси-сервер обрабатывает всю строку запроса как строку ресурса, и поскольку он кодирует строку запроса между ними, как это делается в Asp.Net без файлов cookie, обратный прокси-сервер возвращает, поскольку ресурс не существует. Таким образом, единственный способ решить эту проблему — отключить обратный прокси. Это то, что клиент сделал, если у кого-то возникла такая же проблема.


person Shoji Kaburagi    schedule 02.07.2015    source источник


Ответы (1)


ДЕТАЛИ ОШИБКИ Во время этой операции были обнаружены следующие ошибки. * [05/21/2015 10:17:07 AM] System.Deployment.Application.DeploymentDownloadException (Unknown подтип) - Загрузка (веб-сайт SSL) / VrWeb / XBAP / (X (1) F (A19128BE536C0F169406543CF67A57010F530A91107DCA648BF21D33107B728082815EBD74F65890A386DBF9CE68959DE5FAF7D765DAB75D404F9F0CCCE6FA791E1595FF5942C37FE46B4098E0D4126491A5C3701AF132E2AAA1DDC9D5DFFBD893A43C6149D7F9E62120BD0125FC6C97B1ED3E16E39BE7E49B40BCD66C18945F)) / AppFiles Ошибка /Netsmart.VR.XBAP_2_0_1_1213/Netsmart.VR.XBAP.exe.manifest. - Источник: System.Deployment - Трассировка стека: в System.Deployment.Application.SystemNetDownloader.DownloadSingleFile(DownloadQueueItem next) в System.Deployment.Application.SystemNetDownloader.DownloadAllFiles() в System.Deployment.Application.FileDownloader.Download(SubscriptionState subState) в System.Deployment.Application.DownloadManager.DownloadManifestAsRawFile(Uri& sourceUri, String targetPath, уведомление IDownloadNotification, параметры DownloadOptions, ServerInformation& serverInformation) в System.Deployment.Application.DownloadManager.DownloadApplicationManifest(AssemblyManifest deploymentManifest, String targetDir, Uri deploymentUri, уведомление IDownloadNotification, DownloadOptions опции, Uri& appSou rceUri, String& appManifestPath) в System.Deployment.Application.DeploymentManager.BindCore(логическая блокировка, TempFile& tempDeploy, TempDirectory& tempAppDir, FileStream& refTransaction, String& productName) в System.Deployment.Application.DeploymentManager.BindAsyncWorker() --- Внутреннее исключение -- - System.Net.WebException - Удаленный сервер вернул ошибку: (400) Неверный запрос. - Источник: Система - Трассировка стека: в System.Net.HttpWebRequest.GetResponse() в System. Deployment.Application.SystemNetDownloader.DownloadSingleFile(DownloadQueueItem далее)

person Shoji Kaburagi    schedule 23.09.2015