rabco
4 سال پیش توسط rabco مطرح شد
18 پاسخ

پاک شدن سشن کاربر و سبد خرید هنگام برگشت از درگاه پرداخت

دوستان سلام
من به ی مشکل خوردم زمانی که کاربر پرداختش رو انجلم میده و بر میگرده با سایت (از طریق درگاه ملت ) سشن ها پاک میشن و کاربر خارج میشه از پنلش تا اینجا فهمیدم که مشکل از csrf هست و توی میدلویر VerifyCsrfToken آدرس url برگشت از درگاه رو گذاشتم اما باز هم این ایراد رو دارم.
اما اگر توی کانفیگ سشن ها مقدار samesite رو روی none بگذارم این مشکل حل میشه اما دیگه csrf کلا غیر فعال میشه برای سشن ها چکار کنم که بدون دستکاری samesite سشن ها غیر فعال نشن ؟
@hesammousavi
@ali.bayat


ثبت پرسش جدید
حسام موسوی
تخصص : طراح و برنامه نویس
@hesammousavi 4 سال پیش مطرح شد
0

سلام اینکه کاربر بره وارد درگاه پرداخت بشه و بعد از درگاه پرداخت وارد وبسایت شما بشه چه ربطی به پاک شدن سشن شما داره اصلا ؟


rabco
تخصص : Full Stack developer
@rabco 4 سال پیش آپدیت شد
0

@hesammousavi
این اتفاق میفته برام و کاربر از حساب کاربریش خارج میشه و دوباره تقاضای ورود میکنه و همچنین سبد خرید من با سشن هاست که سشن اون هم از بین میره
خودتون اگر زحمتی نیست چک کنید ممنون اگر عملیات رو هم کنسل کنید باز همون اتفاق میفته
ربکو


alireza
@mohammad.fathi9k 4 سال پیش مطرح شد
0

بنده ام همین مشکلو دارم شما حلش کردید


woz
تخصص : fan of open source world
@wozniak 4 سال پیش مطرح شد
0

این مورد که شما می فرمایید که csrf کلا غیر فعال میشه و چک نمیشه صحیح نیست باز چک میشه. آیا اشتباه میکنم منو تصحیح کنید


سید محمد هاشمی
تخصص : برنامه نویس فول استک
@smhkhorram 4 سال پیش مطرح شد
-1

سلام وقت بخیر. من هم دقیقا همین مشکل رو دارم. با درگاه ذرین پال چنین مشکلی ندارم. هم سش سبد خرید پاک میشه هم کاربر رو میندازه بیرون.


نوب
تخصص : کدنویس نوب :)
@yk5742g 4 سال پیش مطرح شد
0

@rabco سلام
برو توی کانفیگ و فایل session و اونجا ببین گزینه expire_on_close حتما false باشه و lifetime هم بالای 30 باشه
و گزینه بعد اینکه توی فرمتون حتما اگر post هست @csrf ست کنین


سید محمد هاشمی
تخصص : برنامه نویس فول استک
@smhkhorram 4 سال پیش مطرح شد
0

@yk5742g سلام مواردی که گفتید کاملا تنظیم شده ست. مشکل از جای دیگه ایه. قراره فردا تماس بگیرم با به پرداخت. اصلا خیلی بی معنیه این اتفاق.
اما اینگه فرمودید حتما اگر post هست @csrf ست کنین ، موقعی که داریم میریم به درگاه خوب csrf هست.ولی موقع برگشت که در اختیار ما نیست این مورد. شما دقیقا منظورتون کجا ست ؟ کجا میگید ست کنیم ؟


سید محمد هاشمی
تخصص : برنامه نویس فول استک
@smhkhorram 4 سال پیش مطرح شد
0

جناب @hesammousavi سلام شما نظری ندارید ؟ من قبلا با درگاه ملت کار کردم روی سه تا پروژه دیگه. هیچوقت این اتفاق نمی افتاد.


مهدی مهدوی
تخصص : تازه وارد
@mehdi.mahdavi97 4 سال پیش مطرح شد
0

سلام
@smhkhorram
از ابر آروان استفاده نمی کنید احتمالا ؟


محمدرضا قمی اویلی
تخصص : لاراول
@ghomi 4 سال پیش مطرح شد
0

از طریق میدلور VerifyCsrfToken مقدار روت مورد نظر از لیست چک شدن خارج کنید.

    protected $except = [
        'payment/callback',
    ];

توی بازگشت انتظار نداشته باشین که مقدار user وجود داشته باشه چون درخواست از کلاینت کاربر ارسال نمیشه بلکه از طریق درگاه بانک ارسال میشه


kiyaee
تخصص : Backend Developer
@kiyanakiyaee 3 سال پیش مطرح شد
0

@mehdi.mahdavi97 چرا از آروان استفاده می کنیم و به این مشکل خوردیم متاسفانه اگر راه حلی دارید ممنون میشم بگید


امیرحسین عنبری
تخصص : Web application developer
@amiranbari33 3 سال پیش مطرح شد
1

سلام. من هم همین مشکل رو داشتم و خیلی وقته دنبالش بودم.
شما وقتی میخواید برید به درگاه پرداخت یک ادرس callback میدید. دقیق یادم نیست ولی یا باید ادرس رو بدون www میدادید یا با www
یعنی این 2 مورد رو امتحان کنید:

https://www.test.com
https://test.com

یکی از این ها جواب داده بود برای من .امتحان کنید ممنون
@rabco


امیرحسین عنبری
تخصص : Web application developer
@amiranbari33 3 سال پیش مطرح شد
0

مشکل اصلی از ارائه دهنده واسط درگاه پرداخت هستش


مهدی مهدوی
تخصص : تازه وارد
@mehdi.mahdavi97 3 سال پیش مطرح شد
0

سلام
@kiyanakiyaee
ابر آروان ظاهرا اپشنی داره که کوکی ها رو کش میکنه
این مورد را غیرفعال کنید ( ما این مشکل رو داشتیم و پس از کلی بررسی همکاران این دلیل رو واسش پیدا کردن)


mahdiarrr74 Mransouri
@mahdiarrr74 3 سال پیش مطرح شد
0

@mehdi.mahdavi97
مرسی مرسی مرسی دقیقا مشکل همین بود و با افزودن این سه خط کد درست شد

header("Cache-Control: no-store, no-cache, must-revalidate, max-age=0");
    header("Cache-Control: post-check=0, pre-check=0", false);
    header("Pragma: no-cache");

حسین ستاری
تخصص : برنامه نویس
@Ho3ein 3 سال پیش مطرح شد
0

درود من هم چنین مشکلی داشتم با درگاه ملت و خب یسری از دوستان گفتن ادرس callback رو یا باید با www یا بدون اش بدیم به بانک که خب برا من کار نکرد این روش یا اینکه اون روت رو بدون csrf توکن کنیم که بازم کار نکرد برای من و من تنها کاری که تونستم کنم این بود که اون روت رو از میدلور auth بردارم و برسی کنم مقداری برگشتی وجود داره یا نه و اگر وجود داشت و مقدار resnumber برابر با مقدار توی جدول بود و پرداخت انجام شده بود از طریق رابطه کاربر رو بدست بیارم و لاگینش کنم و بقیه داستان
این کاری بود که من تونستم کنم امیدوارم بدردت بخوره.


جواد رنجبر
تخصص : برنامه نویس
@javadrsty 3 سال پیش مطرح شد
0

@mahdiarrr74

این سه خط کد رو کجا باید وارد کنیم؟


Mohammad Nazari
@mn68728 1 سال پیش مطرح شد
0

این سه خط نوشتم .
وقتی کاربر از درگاه برگشت هنوز سشن پاک نشده.


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام