API PATCH请求在Micro Focus RPA中使用python移动消息

问题描述

我需要使用Micro Focus Robotic Process Automation应用程序创建一个PATCH请求,以将电子邮件移动到另一个文件夹中。此应用程序的语法与普通python不同,我在弄清楚它时遇到了麻烦。

如果我删除“ head”行,“ authorization”行以及在“ response”行中调用“ header”和“ authorization”,则以下方法有效

但是很明显,由于没有授权,它会返回401代码

授权部分抛出以下错误'str' object is not callable
标头部分会引发此错误'str' object has no attribute 'items

代码从这里开始

import importlib
requests = importlib.import_module('requests')
json = importlib.import_module('json')
url = 'https://graph.microsoft.com/v1.0/users/{{account account}}/messages/' + messageID
body = "{'subject':" + careRecordNum + "' - Thank you for your enquiry. Ref: 1046120'}"
head = "{'Content-Type': 'application/json;charset=UTF-8'}"
authorization = "{'Authorization': 'Bearer '" + accesstoken + "}"


response = requests.patch(url,data=json.dumps(body),headers=head,auth=authorization)
return {'response':response}`

解决方法

想通了:

def execute(messageID,accessToken): 
    import importlib
    requests = importlib.import_module('requests')

url = 'https://graph.microsoft.com/v1.0/users/{{user}}/messages/' + messageID + '/move'
body = "{\"destinationId\":\"{{folderID}}\"}"
head = {"Content-Type": "application/json;charset=UFT-8","Authorization": "Bearer " + accessToken}

response = requests.post(url,data=body,headers=head)
return {'response':response}