在使用oauth1和python调用confluence api时如何发布附件?

我能够使用oauth1成功更新调用confluence api的confluence页面。但是我无法发布附件。我看过多个博客,但找不到任何解决方案。

QQW1236 回答:在使用oauth1和python调用confluence api时如何发布附件?

我能够通过使用pythons库“ requests_oauthlib”解决此问题。下面是我用于在融合时更新附件的代码片段。

from requests_oauthlib import OAuth1

class Confluence_Page_Update():
    def __init__(self,file__with_path):
        self.client_key = 'abcxyz'
        self.client_secret = ''
        self.key = open("/opt/SP/apps/confluence_auto_update/rsa.pem").read()
        self.resource_owner_key = 'jasnjdnajsndjandjnaj'
        self.resource_owner_secret = 'ajsndjansjdnajdnja'
        attachment = open(file__with_path,'rb')
        filename = ntpath.basename(file__with_path)
        self.files = {'file': (filename,attachment,'application/octet-stream')}


def send_attachment(self,pageid,attachmentid):
        headers = {"X-Atlassian-Token": "nocheck"}
        oauth = OAuth1(self.client_key,client_secret=self.client_secret,resource_owner_key=self.resource_owner_key,resource_owner_secret=self.resource_owner_secret,signature_type='auth_header',rsa_key=self.key,signature_method='RSA-SHA1')
        r = requests.post(url="https://cps.confluence.abc.com/rest/api/content/" + pageid + "/child/attachment/" + attachmentid + "/data",auth=oauth,files=self.files,headers=headers)
        print(r.status_code)
本文链接:https://www.f2er.com/2890983.html

大家都在问