Exchangelib:修改电子邮件时出现 ErrorIrresolvableConflict

问题描述

我不得不使用 exchangelib 来修改我的一些电子邮件主题。 以下是我用来修改电子邮件主题代码行。 我正在将应用详细信息与 exchangelib 包一起使用。

credentials = OAuth2Credentials(client_id="",client_secret="",tenant_id="",identity=Identity(primary_smtp_address=""))

config = Configuration(credentials=credentials,auth_type=OAUTH2,service_endpoint='https://outlook.office365.com/EWS/exchange.asmx')

    account = Account(
        primary_smtp_address=mailBox_name,config=config,access_type=IMPERSONATION)
    inBox = account.inBox
    if inBox.all().exists():
        for message in inBox.all().order_by('-datetime_received')[:10]:
            message.subject = "Modified Subject"
            # message.save()
            message.save(update_fields=['subject'])

更新消息操作抛出以下错误

message.save(update_fields=['subject'])


File "C:\Program Files\python38\lib\site-packages\exchangelib\items\item.py",line 97,in save
    item_id,changekey = self._update(
  File "C:\Program Files\python38\lib\site-packages\exchangelib\util.py",line 38,in wrapper
    return f(self,*args,**kwargs)
  File "C:\Program Files\python38\lib\site-packages\exchangelib\items\item.py",line 183,in _update
    res = UpdateItem(account=self.account).get(
  File "C:\Program Files\python38\lib\site-packages\exchangelib\services\common.py",line 93,in get
    res = list(self.call(**kwargs))
  File "C:\Program Files\python38\lib\site-packages\exchangelib\services\common.py",line 550,in _pool_requests
    for elem in self._get_elements(payload=payload_func(chunk,**kwargs)):
  File "C:\Program Files\python38\lib\site-packages\exchangelib\services\common.py",line 118,in _get_elements
    for i in self._response_generator(payload=payload):
  File "C:\Program Files\python38\lib\site-packages\exchangelib\services\common.py",line 414,in _get_elements_in_response
    container_or_exc = self._get_element_container(message=msg,name=self.element_container_name)
  File "C:\Program Files\python38\lib\site-packages\exchangelib\services\common.py",line 373,in _get_element_container
    raise self._get_exception(code=response_code,text=msg_text,msg_xml=msg_xml)
exchangelib.errors.ErrorIrresolvableConflict: The send or update operation Could not be performed because the change key passed in the request does not match the current change key for the item.

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)