2010-11-04 3 views
1

Так что мне нужно настроить веб-сервис. В принципе, мы отправляем X509 подписанные XML-файлы по каждому через HTTP. У нас есть URL-адрес, который мы должны отправлять, поэтому отправка его не является большой проблемой, я могу понять это. Тем не менее, я должен позволить третьей стороне узнать, какой URL-адрес они могут опубликовать на нашем конце. Как я должен достичь этого URL?Ищите хорошее объяснение на веб-службе SOAP

Я хочу настроить веб-службу, чтобы она автоматически обнаруживала любые запросы, отправленные нам, и извлекала подписанный XML из мыльного сообщения и что-то с ним делала, а затем имеет возможность отформатировать ответ SOAP, подписывая XML на наш конец с использованием x509 и отправьте его по HTTP обратно к ним.

Может ли кто-нибудь дать мне достойное объяснение того, как я установлю что-то подобное в Visual Studio 2008? У нас есть другие услуги, которые имеют api.ashx, которые имеют такие методы, как это:

Sub ProcessRequest(ByVal context As HttpContext) Implements IHttpHandler.ProcessRequest 

Но в основном то, что URL, что его захвата HTTP с. И могу ли я настроить это так же?

+0

Привет, Скотт, может быть хорошей идеей перефразировать название вашего вопроса (ради потомства), поскольку неясно, как оно относится к URL-адресу службы. Что-то вроде «Как определяется URL-адрес службы SOAP?» Таким образом, некоторые другие люди могут воспользоваться этим. – sheikhjabootie

ответ

0

URL-адрес вашего сервиса не имеет ничего общего с SOAP или любым из них. Если у вас есть служба WCF (.svc) или служба ASMX (.asmx), как правило, вы будете размещать это где-то в веб-сервере - если вы используете http для транспортного механизма.

Таким образом, URL-адрес - http://mywebserver.mydomain:80/a/b/c/myservice.svc - может соответствовать файлу службы, называемому myservice.svc, который находится в папке c, которая находится в папке b, которая находится в папке a, которая находится в корневом каталоге веб-сайта, который прослушивает порт 80 (это значение по умолчанию и может быть опущено) на сервере называемый mywebserver, который находится в домене mydomain.

Веб-сайт может содержать виртуальные каталоги, а также обычные, поэтому это может быть немного сложнее.

Так что, если вы используете по умолчанию веб-сайта на IIS и не виртуальных каталогов, то вы бы разместить файл службы здесь: C: \ Inetpub \ Wwwroot \ а \ Ь \ с \ myservice.svc

Надежда что помогает

3

Есть несколько хороших определений SOAP Web Services там:

Некоторые примеры того, как создать веб-служб в .NET:

С этими статьями и некоторые прибегая к помощи это не займет слишком много времени, чтобы создать небольшой веб-сервис, где предлагается, что ведет себя как внешний API для нашего приложения.

+0

Мой главный вопрос был процитирован как «Тем не менее, я должен позволить третьей стороне узнать, какой URL-адрес они могут опубликовать с нашей стороны. Как мне достичь этого URL?». – Scott

+0

@Scott - см. Шаг 2 третьего примера выше: «Это документ WSDL, который клиент будет использовать для доступа к этой службе». – leakyboat

0

URL-адрес, на который клиент будет называть вашу услугу «зависит от вашего инструментария». i.e. Руководство - ваш друг.

Это то, что предлагает Axis2c: Служба развернута под каталогом служб. На что также указывает ваш веб-сервер.

Таким образом, все, что меньше услуг/MyCustomService будет переводить как: http://yourip:port/axis2/services/MyCustomService

С вашего SOAP Toolkit, конечная точка может иметь различное расположение. Сервис в MS-наборе инструментов, который я сейчас вызываю, - это что-то вроде: http://theirip:port/name/name.aspx/serviceName

Приветствия!

 Смежные вопросы

  • Нет связанных вопросов^_^