需要调用外部的一个接口,是 https 协议的,有 header 与证书要求,在调用时报错,情况如图
已经排除了网络情况,之后又尝试了代码块解决,同样发生了报错
import requests
post_url = "https://******************************************"
headers = {'ecs-api-key': '********'}
r = requests.post(post_url, headers=headers)
json = r.json()
output = {'output': r.json()['data']}
又尝试另一种调用方法,还是报错
import urllib.request
import urllib.parse
import json
import ssl
# 导入头文件
# 生成证书上下文(unverified 就是不验证https证书)
context = ssl._create_unverified_context()
url = 'https://************************************' # 提交到表单页面
headers = {'ecs-api-key': '*********'}
data = {}
data = urllib.parse.urlencode(data).encode('utf8')
request=urllib.request.Request(url, data, headers) # 请求处理
reponse=urllib.request.urlopen(request, context=context).read().decode('utf8') # 读取结果
json1 = json.loads(reponse)['data']
output ={'output':json1}
也排除了代码问题,在 Pycham 中是可以正常执行的
有没有大佬遇到过这类情况,请指教!
或者提供一些排查问题的方向也非常感谢!