gpt4 book ai didi

python - 同步时未记录的 Exchange ActiveSync 状态

转载 作者:太空宇宙 更新时间:2023-11-03 19:28:51 28 4
gpt4 key购买 nike

我正在尝试构建一个简单的 Exchange ActiveSync 客户端。

我使用一个简单的 Python 脚本,在连接到 Exchange 2010 SP1 时发送初始同步电子邮件命令。

在请求正文中,我发送以下编码为 WBXML 的 XML(使用 pywbxml):

<?xml version="1.0"?>
<!DOCTYPE AirSync PUBLIC "-//AIRSYNC//DTD AirSync//EN" "http://www.microsoft.com/">
<Sync>
<Collections>
<Collection>
<Class>Email</Class>
<SyncKey>0</SyncKey>
<CollectionId>5</CollectionId>
</Collection>
</Collections>
</Sync>

服务器以 200 OK 应答,但返回 状态代码:4

<?xml version="1.0"?>
<!DOCTYPE AirSync PUBLIC "-//AIRSYNC//DTD AirSync//EN" "http://www.microsoft.com/">
<Sync>
<Status>4</Status>
</Sync>

我在官方文档中找不到有关此状态代码的任何文档。我该如何解决这个问题?

最佳答案

Sync 状态代码值 4 表示客户端协议(protocol)错误。它记录在 this MSDN page .

正确的 Sync 命令看起来更像下面这样,假设 Inbox 的 ID 为 5(从 WBXML 转换为可读的 XML):

<?xml version='1.0' ?>
<Sync>
<Collections>
<Collection>
<SyncKey>0</SyncKey>
<CollectionId>5</CollectionId>
<Options>
<FilterType>5</FilterType>
<BodyPreference>
<Type>1</Type>
<TruncationSize>32768</TruncationSize>
</BodyPreference>
</Options>
</Collection>
</Collections>
</Sync>

但是,EAS 协议(protocol)要求您首先ProvisionFolderSync。您不能直接跳到Sync。基本协议(protocol)序列描述为here .

关于python - 同步时未记录的 Exchange ActiveSync 状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7020815/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com