Перейти к содержимому

اگر درگاه پرداخت Callback را دوبار بفرستد چه می‌شود؟ | جلوگیری از پردازش تکراری پرداخت در Django

Ali Samadzadeh | Full-Stack Developer

0:00 / 0:00

اگر درگاه پرداخت Callback را دوبار بفرستد چه می‌شود؟ | جلوگیری از پردازش تکراری پرداخت در Django

1 просмотр · 9 дней назад
Ali Samadzadeh | Full-Stack Developer
3 подписчика
1 просмотр · 9 дней назад
در این ویدیو بررسی می‌کنیم اگر درگاه پرداخت Callback را دوباره ارسال کند، یا کاربر صفحه بازگشت از بانک را Refresh کند، Backend چطور باید جلوی پردازش تکراری یک پرداخت موفق را بگیرد. در پروژه YadakMarketOnline برای حل این مسئله از این موارد استفاده شده: transaction.atomic select_for_update() Idempotent Callback نکات اصلی این ویدیو: چرا Callback تکراری می‌تواند خطرناک باشد چطور PaymentTransaction با select_for_update() کنترل می‌شود چرا خود Order هم Lock می‌شود نقش شرط SUCCESS در جلوگیری از پردازش دوباره چطور Confirm سفارش و Side Effectها فقط یک‌بار اجرا می‌شوند کد کامل پروژه روی GitHub: github.com/alisamadzadeh46/YadakMarketOnline