为什么 request.get(url).json 收到错误请求,而 .text 却没有?

Why does request.get(url).json get a bad request but .text does not?

正在编写一些 python 以使用此 link https://www.googleapis.com/oauth2/v1/tokeninfo?access_token=

验证 OAuth2 令牌
import requests

def verify(token):
    url = "https://www.googleapis.com/oauth2/v1/tokeninfo?access_token={auth_token}".format(auth_token = token)
    response = requests.get(url).text
    print(response)
    

if __name__ == "__main__":
    verify(2)

这个returns下面的json(这是正确的)但是在一个字符串中,由于.text 属性。但是,如果我使用 .json 代替,我会得到一个 400 状态代码。自从我使用 python 以来已经有一段时间了,如果我错过了一些明显的东西,我们深表歉意。

{
  "error": "invalid_token",
  "error_description": "Invalid Value"
}

同时我使用了 json 库来加载字符串,但似乎没有必要。

import requests


def verify(token):
    url = f"https://www.googleapis.com/oauth2/v1/tokeninfo?access_token={token}"
    response = requests.get(url).json()
    print(response)


if __name__ == "__main__":
    verify(2)

您使用的是 .json 而不是导致问题的 .json() 。