Exchange-Webdienste – Finden Sie alle ungelesenen Nachrichten mithilfe der Soap-XML-Anfrage

WBOY
Freigeben: 2024-02-12 21:30:08
nach vorne
658 Leute haben es durchsucht

Exchange Web 服务 - 使用soap xml 请求查找所有未读消息

php-Editor Baicao ist hier, um Ihnen eine Methode zur Verwendung von Exchange-Webdiensten vorzustellen, um alle ungelesenen Nachrichten mithilfe von SOAP-XML-Anfragen zu finden. Exchange Web Services ist eine API für die Kommunikation mit Exchange Server, die den Zugriff auf und die Verwaltung von E-Mails, Kalendern, Kontakten und mehr ermöglicht. Mithilfe von SOAP-XML-Anfragen können wir eine Anfrage an den Exchange Server senden und die Daten zurückerhalten. In diesem Beitrag erfahren Sie, wie Sie mithilfe von SOAP-XML-Anfragen alle ungelesenen Nachrichten finden.

Inhalt der Frage abfragen

In meiner Anwendung muss ich den Exchange-Webservice-Server abfragen und alle ungelesenen Nachrichten finden. Ich verwende Golang und sende eine Soap-XML-Anfrage. Ich habe Folgendes versucht:

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:m="http://schemas.microsoft.com/exchange/services/2006/messages"
    xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types"
    xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    <soap:Header>
        <t:RequestServerVersion Version="Exchange2013_SP1" />
    </soap:Header>
    <soap:Body>
        <m:FindItem
            Traversal="Shallow">
            <m:ItemShape>
                <t:BaseShape>IdOnly</t:BaseShape>
            </m:ItemShape>
            <m:Restriction>
                <t:IsEqualTo>
                    <t:FieldURI FieldURI="item:IsRead" />
                    <t:FieldURIOrConstant>
                        <t:Constant Value="false" />
                    </t:FieldURIOrConstant>
                </t:IsEqualTo>
            </m:Restriction>
            <m:ParentFolderIds>
                <t:DistinguishedFolderId Id="inbox" />
            </m:ParentFolderIds>
        </m:FindItem>
    </soap:Body>
</soap:Envelope>
Nach dem Login kopieren

Aber in diesem Fall erhalte ich eine Fehlermeldung, dass meine Anfrage falsch ist. Wenn ich <t:isequalto> entferne, erhalte ich alle Nachrichten in meinem Posteingang. Irgendwelche Ideen, wie man das Problem beheben kann, wären willkommen. Vielen Dank<t:isequalto>,我会在收件箱中收到所有消息。任何如何修复它的想法都将受到欢迎。谢谢

解决方法

根据 fielduri 属性列表item:isread 应为 message:isreadLösung

Laut Fielduri-Attributliste, item:isread< /code> sollte <code>message:isread sein. Unten ist der Gleichheitsfilter von 🎜ews 🎜:🎜
<t:IsEqualTo>
  <t:FieldURI FieldURI="message:IsRead" />
  <t:FieldURIOrConstant>
    <t:Constant Value="false" />
  </t:FieldURIOrConstant>
</t:IsEqualTo>
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonExchange-Webdienste – Finden Sie alle ungelesenen Nachrichten mithilfe der Soap-XML-Anfrage. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:stackoverflow.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!