使用 python requests 模块访问接口,接口返回的状态码 200 ,但获取到的接口数据 requests.get(url).text 为空。
现象
相同的接口地址,使用 postman 访问可以获取到对应返回信息,但使用 python requests 模块访问接口虽然状态码返回 200 , 但无响应内容。
原因
python requests 缺少 headers。
postman 会自动加上 headers ,而 python requests 虽然在查看 requests.get(url).headers 时有对应的输出,但却是接口返回的默认 headers,在发送接口请求时并无 headers。
一些网站的接口可以不加 headers 就能获取到对应响应,但添加 headers 可以避免一些问题,即便 headers = ’ '。
解决
加上 headers ,再次发送接口请求。
requests.get(url,headers=’ ’ ).text