MarkAsJunk 操作错误代码 9020。获取“发生内部服务器错误。操作失败。”

问题描述 投票:0回答:2

我正在尝试仅使用带有 Office.context.mailbox.makeEwsRequestAsync

SOAP
请求来使用 MarkAsJunk 操作。为此,我还使用了 easyEWS 模块,它是 OfficeJS 的包装器。我用来发送 SOAP 的代码如下所示:

this.markAsJunk = function (itemId) {
    var soap = '<m:MarkAsJunk IsJunk="true" MoveItem="true"' +
            '          
    xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types">' +
            '    <ItemIds>' +
            '        <t:ItemId Id="' + itemId + '"/>' +
            '    </ItemIds>' +
            '</m:MarkAsJunk>';
    soap = getSoapHeader(soap);

    asyncEws(soap, function (data) { });
};

我发送的 SOAP 看起来像这样:

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
               xmlns:xsd="http://www.w3.org/2001/XMLSchema"
               xmlns:m="http://schemas.microsoft.com/exchange/services/2006/messages"
               xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
               xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types">
   <soap:Header>
        <RequestServerVersion Version="Exchange2013" xmlns="http://schemas.microsoft.com/exchange/services/2006/types" soap:mustUnderstand="0" />
   </soap:Header>
   <soap:Body>
        <m:MarkAsJunk IsJunk="true" MoveItem="true"
        xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types">
            <ItemIds>
                <t:ItemId Id="AAMkADg2OGZmNDkzLWVjNDYtNGI2MC1iMGI3LWE3YmEzMDk5MThiNABGAAAAAAC3FQIsRYg6SZwlyqfCFdA0BwBTNDtA08+GRo/QPlH0XaGpAAAAAAEMAABTNDtA08+GRo/QPlH0XaGpAADEMDCVAAA="/>
            </ItemIds>
        </m:MarkAsJunk>
    </soap:Body>
</soap:Envelope>
soap exchangewebservices outlook-addin office-js outlook-web-addins
2个回答
0
投票

ItemIds 存在于命名空间 xmlns:m="http://schemas.microsoft.com/exchange/services/2006/messages" 中,因此您需要使用“m:ItemIds”。 请参阅教程此处了解 SOAP 请求格式。


0
投票

请帮助我:我正在创建一个 Outlook 插件,它将电子邮件发送到特定的电子邮件地址,以交换本地环境。我用 youman 生成器创建了 addin 并使用了 React 框架。有这方面经验的朋友吗?

© www.soinside.com 2019 - 2024. All rights reserved.