У меня есть базовый c python веб-сервер, который прослушивает POST-запросы.
Он ожидает изображение и отображает его. Вот пример:
from flask import Flask, request, Response
import cv2
import numpy as np
app = Flask(__name__)
@app.route('/my_endpoint',methods=['POST'])
def do_something():
r = request
nparr = np.fromstring(r.data, np.uint8)
print(nparr)
print(r.data)
img = cv2.imdecode(nparr, cv2.IMREAD_COLOR)
cv2.imshow('title',img)
cv2.waitKey(0)
Response(response="", status=200, mimetype="application/json")
app.run(host="0.0.0.0", port=8000)
Когда я отправляю запросы, используя код python, он работает так, как я хочу:
import requests
img = open('my_image.jpg', 'rb').read()
response = requests.post("http://localhost:8000/my_endpoint", data=img, headers={'content-type': 'image/jpeg'})
Но мне не удается сделать то же самое вещь, использующая CURL в командной строке.
Следующий запрос
curl -F "image=@my_image.jpg;type=image/jpeg" http://localhost:8000/my_endpoint
не работает. Два отпечатка на моем веб-сервере печатают следующее:
[]
b''
Как мне написать мой запрос CURL, чтобы сделать то, что я хочу?