You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Некорректно реализована проверка state в invoice_handler.
async def invoice_handler(id: str, message: Message) -> None:
while True:
invoice = await crystal.invoice.get(id)
if invoice.state != "notpayed":
await message.answer("Счёт успешно оплачен!")
await asyncio.sleep(15) # Задержка
Необходимо заменить if invoice.state != "notpayed" на if invoice.state == "payed".
При проверке конкретного состояния, должна делаться проверка конкретного состояния и никак иначе.
state имеет множество других значений, соответственно при оригинальном варианте проверки, она может сработать при любом не успешном статусе.
Это довольно важная проблема, если кто-то скопирует этот код и будет использовать его в своём проекте, то это может привести к определённым потерям.
The text was updated successfully, but these errors were encountered:
Некорректно реализована проверка
state
вinvoice_handler
.Необходимо заменить
if invoice.state != "notpayed"
наif invoice.state == "payed"
.При проверке конкретного состояния, должна делаться проверка конкретного состояния и никак иначе.
state
имеет множество других значений, соответственно при оригинальном варианте проверки, она может сработать при любом не успешном статусе.Это довольно важная проблема, если кто-то скопирует этот код и будет использовать его в своём проекте, то это может привести к определённым потерям.
The text was updated successfully, but these errors were encountered: