我正在尝试将图像发送到 Flask API。到目前为止,我正在使用 base64 对要作为字符串发送的图像进行编码。在服务器端,我接收该字符串并对其进行解码,并尝试在服务器端写入文件。代码运行,但生成的 JPG 不可见,并且显示“看起来我们不支持这种格式”。我还尝试将文件另存为其他照片文件格式。我将它转换为字符串,这就是我保存为 jpg 的原因。
这是我的客户端代码:
with open(filename, "rb") as img:
string = base64.b64encode(img.read())
print(type(string))
print(string)
name = 'John Doe'
EmpID = 1
company = 1
def test():
api_url = "http://192.168.8.13:5000/register-new?emp_name=%s&company_id=%s&emp_id=%s&user_photo=%s" % (name, company, EmpID, string)
response = requests.post(url= api_url)
assert response.status_code == 200
Run Code Online (Sandbox Code Playgroud)
这是接收照片的服务器端代码。
photo = request.args.get('user_photo')
photo1 = photo.replace(" ", "")
f = (base64.b64decode(photo1))
a = io.BytesIO()
with open("compare.jpg", "wb") as file:
file.write(f)
Run Code Online (Sandbox Code Playgroud)