Какой заголовок мне использовать?Заголовок XMLHTTPRequest или заголовок SOAP? - PullRequest
0 голосов
/ 21 марта 2012

У меня есть XMLHTTPRequest, который содержит сообщение SOAP.
Я хочу добавить guid, который идентифицирует сообщение и будет использоваться веб-службой C #.
Цель GUID состоит в том, чтобы идентифицировать конкретного пользователя и, как предполагается, сопровождать все пользовательские запросы для аутентификации на сервере. Этот GUID создается при входе пользователя в систему, сохраняется на сервере, а затем для каждого запроса проверяется сервером guid запроса.

Должен ли я использовать заголовок XMLHTTPRequest следующим образом:

setRequestHeader("GUID", this.requestGUID);

Или используйте заголовок SOAP

<?xml version="1.0"?<?xml version="1.0"?>
<soap:Envelope
xmlns:soap="http://www.w3.org/2001/12/soap-envelope"
soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding">

<soap:Header>
  <GUID>someGUID...</GUID>
</soap:Header>
...
...
</soap:Envelope>

Есть ли преимущества у одного из них?

Спасибо!

Ответы [ 2 ]

3 голосов
/ 21 марта 2012

Я думаю, что ответ на ваш вопрос в основном вопрос вкуса. Лично я предпочел бы использовать метод setRequestHeader: он занимает меньше места в сообщении и не зависит от SOAP (мне лично больше нравится JSON как SOAP).

Если бы я знал больше о природе значения GUID, я бы, вероятно, передумал. Если GUID является свойством данных, тогда тело сообщения будет лучшим выбором. Не имея больше информации, как вы отправили в вопросе, я остаюсь setRequestHeader выбор.

0 голосов
/ 21 марта 2012

Если ваш код имеет сообщение SOAP, у него должен быть заголовок мыла.Смешивание сообщений SOAP с другими заголовками может нарушить некоторые реализации стека SOAP.Реализация в .NET является особенно строгой.

Заголовок XMLHTTPRequest используется для перезапускаемых сервисов, которые придерживаются различных принципов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...