CURL размещать изображения в командной строке - PullRequest
0 голосов
/ 11 марта 2020

У меня есть базовый 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, чтобы сделать то, что я хочу?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...