@buymyopps

Ошибка 404 при обработке get запроса flask?

Здравствуйте. Возникает ошибка 404 при попытке сделать get запрос к серверу на flask.

Запрос выглядит вот так: 34.71.113.109/?MERCHANT_ID=213123&AMOUNT=2313&inti...

А вот код сервера:

from flask import Flask

app = Flask(__name__)

@app.route("/?MERCHANT_ID=<shop_id>&AMOUNT=<price>&intid=<op_id>&MERCHANT_ORDER_ID=<chat_id>", methods=['GET'])
def hello(shop_id,price,op_id,chat_id):
    return f"{chat_id}"

app.run(host = "0.0.0.0", port = 80)


Программа работает на удаленном компьютере. Порт открыт. Если просто возвращать "hello world" все работает.
  • Вопрос задан
  • 233 просмотра
Решения вопроса 1
kshnkvn
@kshnkvn
yay ✌️ t.me/kshnkvn
В правилах роута ты можешь задавать только параметры адреса, то есть если ты пишешь
@app.route(rule='/<foo>/<bar>', methods=['GET'])
def index(foo, bar):
    ....

То это будет означать, что foo и bar - это параметры адреса, то есть example.com/asda/dasda. Если тебе нужно получить аргументы адреса, например example.com/?foo=asda, то нужно использовать request.args, то есть:
from flask import request

@app.route(rule='/', methods=['GET'])
def index():
    if request.args.get('foo'):
        return f'{request.args["foo"]}'
    ....
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы