requests.get后返回的标头有时有Authorization这一内容,有时又没有[阿里云函数计算]

同样的的代码,在我自己的电脑上运行时都没有问题,每次运行都能够成功返回带有Authorization的标头。但是将我的代码部署在函数计算上之后,就会报错。不改动代码运行多次,会大概率出现返回的标头不带Authorization,location信息也明显不对。但是偶尔也会成功几次,就很奇怪。下面是相关部分代码:

url1 = 'https://ids.chd.edu.cn/authserver/login?service=http://cdjk.chd.edu.cn/healthPunch/index/login'
r1 = requests.get(url=url1,headers=headers1,allow_redirects=False)
sleep(1)
url2 = r1.headers['Location']
r2 = requests.get(url=url2,headers=headers2,allow_redirects=False)
sleep(1)
url3 = r2.headers['Location']
r3 = requests.get(url=url3,headers=headers3,allow_redirects=False)
sleep(1)
h3 = r3.headers
print(h3)
'''其中headers1传递一个CASTGC值的cookie,
headers2是一些包含User-Agent的普通内容,
headers3包括第二个requests获取的cookie,
为了界面简约就不写出来了。'''

通过我的代码,在我自己电脑上每次运行都能成功返回以下结果:(在部署到函数计算运行有时也能成功返回以下结果,但有时又不能)

{'Server': 'Server      ', 'Date': 'Fri, 26 Aug 2022 01:49:16 GMT', 'Content-Length': '0', 'Connection': 'keep-alive', 'Authorization': 'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2NjE0Nzk0NTZ9.MgtsXQoleJJJLhJwq1zbQZkTJb6FVivvPORyDY7H50E', 'Location': 'https://cdjk.chd.edu.cn/#/?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2NjE0Nzk0NTZ9.MgtsXQoleJJJLhJwq1zbQZkTJb6FVivvPORyDY7H50E'}

这个结果中是包含Authorization信息的。但是在部署到函数计算上之后,有时偶尔也能成功,但同样的代码有时就会返回下面的信息,没有Authorization的内容。

{'Server': 'Server      ', 'Date': 'Fri, 26 Aug 2022 00:03:13 GMT', 'Content-Length': '0', 'Connection': 'keep-alive', 'Location': 'http://ids.chd.edu.cn/authserver/login?service=http%3A%2F%2Fcdjk.chd.edu.cn%2FhealthPunch%2Findex%2Flogin%3Bjsessionid%3DD59EFFA16259A32840F2A6CAB299A355'}

这个结果里根本没有Authorization信息,返回的location也不一样。请问大家,这是什么原因造成的呀?为什么同样的代码有时可以成功,有时又不行。 我尝试过在三次requests.get之间加sleep,1秒和5秒甚至更长都尝试过。结果都是概率性的成功或失败。 感谢大家能看到这里,如果有想法请帮帮我,感谢。或者能指点我应该往哪方面去考虑,去学习,谢谢大家。

「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
=====这是一个广告位,招租中,联系qq 78315851====