آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

ساخت برنامه اندروید برای پروژه notes و set نشدن session

hosseinAmini  10 سال پیش  10 سال پیش
+2 0

سلام
دارم برای پروژه note یک برنامه اندروید میسازم. وقتی کاربر از طریق برنامه وارد پروفایلش میشه هیچ کدوم از SESSION هایی که در متد loginCheck نوشتیم set نمیشن. دلیلش چیه؟ و چه جوری میتونم درستش کنم؟

تشکر

0 0
فکر کنم نیازی به session برای ورود به پروفایل نباشه با SharedPreference میشه وضعیت login و logout رو نگه داشت . (10 سال پیش)
0 0
آره میشه. ولی اینجوری هرچی بهش فکر میکنم به این نتیجه میرسم که امنیت میاد پایین. میخوام سمت سرور متوجه شم اگر آیدی کاربر با مقداری که در session ذخیره شده بود یکی نبود بهش اطلاعات ندم یا اینکه اگر session ثبت نشده بود بازم هیچ اطلاعاتی به کاربر ندم، دقیقا کارایی که تو پروژه note انجام دادیم الان تو برنامه من اگر یکی آیدیش رو از داخل کد تغییر بده میتونه اطلاعات کاربرای دیگه رو ببینه. برای جلوگیری از این اتفاق هیچ راهی به جز session به ذهنم نرسید (10 سال پیش)
0 0
کاربر چطوری وارد پنل سایت میشه از طریق گوشی ؟ (10 سال پیش)
0 0
برای لاگین شدن از طریق گوشی توی UserController یه متد نوشتم که بهش از طریق post نام کاربری و رمز عبوری رو که کاربر توی گوشیش وارد کرده رو ارسال میکنم. همه چیزش شبیه متد لاگین شدن از طریق وب سایت هست فقط فرقش اینه که بعد از بررسی نام کاربری و رمز عبور به جای اینکه صفحه success یا fail نمایش داده شه از طریق json نتیجه رو ارسال می کنم حالا توی اندروید بررسی میکنم که اگر نتیجه موفقیت آمیز بوده اکتیویتی notes رو باز میکنم و اگر نبود پیغام خطا به کاربر نمایش میدم. حالا مشکل اینجاس که وقتی توی متد session رو set میکنم set نمیشه (10 سال پیش)
+2 0
خب شما سشنی ایجاد نکردی که براتون بسازه ، سشن زمانی ایجاد میشه که کاربر صفحه ای که Start زدین رو ببینه توی مرورگرش ، در کل برای لاگین شدن به برنامه از روش دیگه ای باید استفاده کنید که یک نمونش رو دوستمون گفتن . (10 سال پیش)
0 0
ا یعنی فقط زمانی session ست میشه که کاربر با مرورگر سایت رو باز کنه؟ آخه روشی که MOJTABA گفت درست کار میکنه ولی فکر میکنم امنیت نداره. مثلا وقتی که کاربر وارد شد(به روش بالا که توضیح دادم) ما از طریق سرور آیدیش رو از طریق json بر میگردونیم و اون json رو توی shahredprefrence ذخیره میکنیم حالا توی اکتیویتی note آیدی ای رو که ذخیره کردیم رو به سرور ارسال میکنیم و تمام noteهای مربوط به اون آیدی رو بر مگردونیم سمت گوشی، تا اینجا درسته؟ حالا اگر یه نفر بتونه مقدار این sharedprefrence رو عوض کنه یا کاری کنه که به جای اینکه مقدار آیدی از sharedprefrence خونده نشه و خودش مقدار آیدی رو بزاره اینجوری میتونه noteهای کاربرای دیگه رو ببینه. (10 سال پیش)
+2 0
سکانس ا: قبل از این که فرد لاگین کنه یک کد هش شده Default توی ShardPreference داشته باشیم. سکانس 2 : یک کد هش شده برای هر کاربر در نظر بگیریم و وقتی فرد داخل اپ لاگین کرد اون کد هش شده رو توی ShardPreference ذخیره کنیم و با اون کار کنیم حالا اگه نخواستیم توی ShardPreference بریزیم می تونیم توی دیتابیس SQLite بریزیم. دیتابیس و ShardPreference اپ کافه بازار رو که چکیدم دیدم که یک REQUEST_CODE داشت که طولش 30 حرف بود. بعدش فیلد های یک جدول از یک دیتابیس هم رمز نگاری شده بود (10 سال پیش)
0 0
MOJTABA مرسی با روشی که گفتی پروژه Note رو ساختم. بی زحمت درباره نحوه رمزنگاری فیلدهای جدول توی دیتابیس توضیح بده. (10 سال پیش)
+1 0
وقتی از توی browser یا webview یک سایت رو باز میکنی یه سری اطلاعات اضافه به سمت سرور ارسال میشه و در جواب یه کوکی بر میگرده که شامل sessionId است. دفعه بعد browser این sessionId رو همراه بقیه اطلاعات به سرور ارسال می کنه و سرور میفهمه که این کیه. شما باید در برنامه اندرویدت این اطلاعات رو هم به سرور بفرستس و کوکی های سرور رو هم ذخیره کنی.. به همین سادگی! (10 سال پیش)
 برای این سوال 1 پاسخ وجود دارد.
پاسخ به سوال 
MOJTABA  10 سال پیش
+1 0

دیتابیس های اپ کافه بازار رو با امولتور Nox کشیدم بیرون

و با افزونه SQLite فایر فاکس بازشون کردم توی دیتابیس bazzar_downloads به این جدول برخوردم:

فکر کردم که با روشی که استاد اپ رو Obfuscate میکردن , کافه بازار هم این چنین حرکتی زده باشه ولی چیزی که به ذهنم میرسه اینه که از این فیلد ها فقط کافه بازار سر در میاره (البته چند فیلدش معلومه که چیه) و به صورت دستی درست شده اند.

توی Stackoverflow که سرچ کردم از نظر بیشتر کاربرا Encrypt کردن فیلد ها کار جالبی نیست ...


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