繁体   English   中英

在request.put中添加标头和有效负载

[英]Add headers and payload in requests.put

我正在尝试使用Python3脚本中的请求来更新具有写入权限的gitlab项目中的部署密钥。 不幸的是,尝试通过请求模块进行连接时,我收到404错误。 代码如下:

project_url = str(url)+('/deploy_keys/')+str(DEPLOY_KEY_ID)
    headers = {"PRIVATE-TOKEN" : "REDACTED"}
    payload = {"can_push" : "true"}

    r = requests.put(project_url, headers=headers, json=payload)
    print(r)

我的私钥/标题的语法在哪里出错?

我已经通过gitlab api并请求文档。 我还确认了我的私有令牌正在脚本之外运行。

我期望它使用写访问权限来更新部署密钥,但是在退出时会收到一个消息,使我认为问题出在标头/身份验证上。

此问题已解决,实际上不是身份验证问题。 您必须使用项目ID而不是url,例如:

project_url = f'https://git.REDACTED.com/api/v4/projects/{project_id}/deploy_keys/{DEPLOY_KEY_ID}'
    headers = {"PRIVATE-TOKEN" : "REDACTED"}
    payload = {'can_push' : 'true'}

    try:
        r = requests.put(project_url, headers=headers, data=payload)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM