Проблемы с запросом автообнаружения: 'GetUserSettings' - PullRequest
0 голосов
/ 24 сентября 2018

Запрос на

POST autodiscover-s.outlook.com/autodiscover/autodiscover.xml

Content-Type: text/xml; charset=utf-8
Accept:       text/xml; charset=utf-8

ТЕЛО

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:a="http://schemas.microsoft.com/exchange/2010/Autodiscover"      
               xmlns:wsa="http://www.w3.org/2005/08/addressing" 
               xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"      
               xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Header>
    <a:RequestedServerVersion>Exchange2010</a:RequestedServerVersion>
    <wsa:Action>http://schemas.microsoft.com/exchange/2010/Autodiscover/Autodiscover/GetUserSettings</wsa:Action>
    <wsa:To>https://outlook.com/autodiscover/autodiscover.svc</wsa:To>
  </soap:Header>
  <soap:Body>
    <a:GetUserSettingsRequestMessage xmlns:a="http://schemas.microsoft.com/exchange/2010/Autodiscover">
      <a:Request>
        <a:Users>
          <a:User>
            <a:Mailbox>test@test_test.onmicrosoft.com</a:Mailbox>
          </a:User>
        </a:Users>
        <a:RequestedSettings>
          <a:Setting>UserDisplayName</a:Setting>
          <a:Setting>UserDN</a:Setting>
          <a:Setting>UserDeploymentId</a:Setting>
          <a:Setting>InternalMailboxServer</a:Setting>
          <a:Setting>MailboxDN</a:Setting>
          <a:Setting>ActiveDirectoryServer</a:Setting>
          <a:Setting>CasVersion</a:Setting>
          <a:Setting>EwsSupportedSchemas</a:Setting>
        </a:RequestedSettings>
      </a:Request>
    </a:GetUserSettingsRequestMessage>
  </soap:Body>
</soap:Envelope>

Я получил ответ:

<?xml version="1.0" encoding="utf-8"?>
<Autodiscover xmlns="http://schemas.microsoft.com/exchange/autodiscover/responseschema/2006">
    <Response>
        <Error Time="16:03:30.0909591" Id="4042903973">
            <ErrorCode>600</ErrorCode>
            <Message>Invalid Request</Message>
            <DebugData />
        </Error>
    </Response>
</Autodiscover>

Я не знаю, что не так.Я перепробовал множество конечных точек и разные схемы в теле, но все равно ничего.Может кто-нибудь помочь мне с решением такой проблемы?

Ответы [ 2 ]

0 голосов
/ 25 сентября 2018

Чтобы отправить запрос SOAP в POX (обычную конечную точку XML), необходимо отправить запрос SOAP на autodiscover-s.outlook.com/autodiscover/autodiscover.svc, который является конечной точкой SOAP.

0 голосов
/ 25 сентября 2018

Я проверил ваш код.

Вы подтвердили свой параметр для этого?

<a:Users>
      <a:User>
        <a:Mailbox>test@test_test.onmicrosoft.com</a:Mailbox>
      </a:User>
    </a:Users>
    <a:RequestedSettings>
      <a:Setting>UserDisplayName</a:Setting>
      <a:Setting>UserDN</a:Setting>
      <a:Setting>UserDeploymentId</a:Setting>
      <a:Setting>InternalMailboxServer</a:Setting>
      <a:Setting>MailboxDN</a:Setting>
      <a:Setting>ActiveDirectoryServer</a:Setting>
      <a:Setting>CasVersion</a:Setting>
      <a:Setting>EwsSupportedSchemas</a:Setting>
    </a:RequestedSettings>
  </a:Request>

Если ваш параметр запроса правильный, вы можете обратиться по этой ссылке:

Быстрый способ исправить код ошибки автообнаружения 600 в Exchange

...