Как отправить статус 200, отвечающий на HTTPS POST в python

Я использую Flask для создания приложения, которое получает некоторые данные с сервера с HTTPS POST и обрабатывает его данные. Как только я получаю сообщение от сервера, мне нужно отправить "status = 200", чтобы сервер знал, что я получил информацию, и прекратил повторную отправку мне информации.

Должен ли я отправить HTTPS GET? На самом деле это не получение, единственное, что мне нужно, это уведомить сервер, который получил сообщение...

Как я могу сделать это в Python? Мне нужно сделать это после обработки данных, которые я получаю, но без возврата.

app = Flask(__name__)
@app.route('/webhook', methods=['POST','GET'])``
def webhook():


req = request.form
xml = req['data']
#HOW DO I SEND A CODE 200 NOW???
info = ET.fromstring(xml)
print info[0].text
print info[1].text
print info[2].text
print info[3].text

Спасибо!

1 ответ

Если вы хотите быть уверенным в коде ответа, вы можете отправить пустой ответ и указать только код ответа, например

return '', 200

Полный ответ можно найти в HTTP-код возврата HTTP 201 в колбе

ОБНОВЛЕНИЕ ОБНОВЛЕННОГО ВОПРОСА:

Вы могли бы использовать Thread для этого.

import threading

app = Flask(__name__)
@app.route('/webhook', methods=['POST','GET'])``

def worker(xml):
  info = ET.fromstring(xml)

  print info[0].text
  print info[1].text
  print info[2].text
  print info[3].text

  return

def webhook():
  req = request.form
  xml = req['data']

  # This executes in background
  t = threading.Thread(target=worker, args=(xml,))
  t.start()

  # So that you can return before worker is done
  return '', 200
Другие вопросы по тегам