无法使用请求在python中构造http基本授权标头

问题描述 投票:0回答:0

团队,

我很难尝试构建标题。任何提示我错过了什么?

成功输出低于我试图在 python 中复制

send: b'GET /api/qualitygates/project_status?projectKey=a-pba&pullRequest=124333-59 HTTP/1.1\r\nHost: sonar.team.com\r\nUser-Agent: python-requests/2.26.0\r\nAccept-Encoding: gzip, deflate\r\nAccept: */*\r\nConnection: keep-alive\r\nAuthorization: Basic gxNmU0ZTkyNWNkYjg1YzdlODlkZTdiZjI0YzBhYzhmMGFkNDo=\r\n\r\n'
reply: 'HTTP/1.1 200 \r\n'

我的 python 脚本是

sq_url = 'https://sonar.team.com/api/'

def sonar_api():
    debug_requests_on()
    url = sq_url+"qualitygates/project_status?projectKey=product-pba&pullRequest="+GERRIT_CN+"-"+GERRIT_PS
    print(url)

    myToken=os.environ.get('TOKEN')
    myToken_bytes = myToken.encode("ascii")
    base64_bytes = base64.b64encode(myToken_bytes)
    base64_bytes_decoded = base64_bytes.decode('utf-8')

    header = ("Authorization: Basic %s" % base64_bytes_decoded)
    print(header)
    r = requests.get(url, headers=header)
    print(r.status_code)
    print(r)

错误输出

Authorization: Basic gxNmU0ZTkyNWNkYjg1YzdlODlkZTdiZjI0YzBhYzhmMGFkNDo=
.
.

  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/requests/models.py", line 451, in prepare_headers
    for header in headers.items():
AttributeError: 'str' object has no attribute 'items'

python request sonarqube
© www.soinside.com 2019 - 2024. All rights reserved.