我们使用office JavaScript api开发Outlook加载项,并且需要更新邮件消息的类别。
当尝试使用Exchange EWS调用UpdateItem时,使用加载项令牌 - 它以500失败。
请参阅:http://pastebin.com/55x2d2Ht
查看请求和回复答案 0 :(得分:2)
您应该可以将UpdateItem与makeEwsRequestAsync
一起使用。您无法使用getCallbackTokenAsync
,因为此调用会返回只读的令牌,该令牌只能用于GetItem
和GetAttachment
。使用makeEwsRequestAsync
发出请求时,您的XML SOAP请求(makeEwsRequest
中的数据参数应如下所示:
<?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:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types">
<soap:Body>
<UpdateItem MessageDisposition="SaveOnly" ConflictResolution="AutoResolve" xmlns="http://schemas.microsoft.com/exchange/services/2006/messages">
<ItemChanges>
<t:ItemChange>
<t:ItemId Id = "AAMkAGI3NDEzZjRhLWU3ZjktNGViNy04MTI1LWFhOWRiZDRlY2QwNABGAAAAAADBaXFYA4KPQqsQBpmZF2+2BwAa6KJzOcvaRKcc5UfLbF5tAAAA4fK1AAACk4HLLuxASqDPNieBkIv8AANIKlICAAA=" ChangeKey="CQAAABYAAAACk4HLLuxASqDPNieBkIv8AANIb3mG"/>
<t:Updates>
<t:SetItemField>
<t:FieldURI FieldURI = "item:Categories" />
<t:Message>
<t:Categories>
<t:String>Workout</t:String>
</t:Categories>
</t:Message>
</t:SetItemField>
</t:Updates>
</t:ItemChange>
</ItemChanges>
</UpdateItem>
</soap:Body>
</soap:Envelope>
您不需要在调用makeEwsRequestAsync时传入回调令牌。