15.12.2016, 15:33 | #1 |
Участник
|
Consume external web-service through proxy
Коллеги,
ситуация такая: ax2012r3 есть внешний сервис в VS стандартным образом создан прокси-класс (с Service Reference на внешний сервис) из аксапты идет обращение к нему с попыткой отправить туда данные в ответ получаем ошибку 407 - нужна аутентификация на прокси вопрос: 1) как в аксапте (или в прокси-классе, его конфиге или параметра Service Reference) задать сервис-клиенту параметры прокси-сервера? 2) как получить из системы стандартные параметры прокси? |
|
16.12.2016, 08:56 | #2 |
Участник
|
Собственно, первый вопрос решился примерно вот таким образом. А второй не столь актуален для меня.
X++: MyNamespace.MyServiceType _client; ClrObject clientType; System.ServiceModel.Description.ServiceEndpoint endPoint; System.ServiceModel.BasicHttpBinding binding; System.ServiceModel.BasicHttpSecurity security; System.ServiceModel.BasicHttpSecurityMode securityMode; System.ServiceModel.HttpTransportSecurity httpTransportSecurity; System.ServiceModel.HttpProxyCredentialType httpProxyCredType; System.Uri proxyUri; ... clientType = CLRInterop::getType("MyNamespace.MyServiceType"); _client = AifUtil::CreateServiceClient(clientType); endPoint = _client.get_Endpoint(); binding = endPoint.get_Binding(); binding.set_UseDefaultWebProxy(false); proxyUri = new System.Uri("http://proxy.site.ru:8080"); binding.set_ProxyAddress(proxyUri); security = binding.get_Security(); httpTransportSecurity = security.get_Transport(); httpProxyCredType = System.ServiceModel.HttpProxyCredentialType::Windows; httpTransportSecurity.set_ProxyCredentialType(httpProxyCredType); security.set_Transport(httpTransportSecurity); binding.set_Security(security); endPoint.set_Binding(binding); |
|
|
За это сообщение автора поблагодарили: Maxim Gorbunov (2). |
Теги |
ax2012, proxy, web-service |
|
|