+1 امتیاز
قبل در کامپیوتر و اینترنت توسط (1.1هزار امتیاز)
برچسب گذاری دوباره قبل توسط

چه راه هایی وجود دارد که وب سرورها تشخیص دهند یک در خواست HTTP رسیده برای یک کار بر جدید است یا اینکه این کاربر قبلا یک صفحه از سایت را دیده است (مدیریت session). تکنولوژی یا زبان برنامه نویسی خاصی مدنظرم نیست، می خام بدونم یک وب سرور ساده به چه روش هایی می تونه کاربران جدید رو از کاربران قدیمی تشخیص بده؟

1 پاسخ

+1 امتیاز
قبل توسط (1.1هزار امتیاز)

بدلیل اینکه پروتکل HTTP یک پروتکل Stateless است، وب سرورها برای حفظ رد کاربر (session) باید از روش های جانبی استفاده کنند، بعضی از این روش ها عبارتند از:

  • استفاده از Cookie: در این روش وب سرور sessionId مربوط به کاربر جاری را درون یک Cookie در مرورگر کاربر ذخیره می کند و با استفاده از این Cookie کاربرهای جدید را از کاربرای قدیمی تشخیص می دهد.
  • استفاده از فیلد Hidden در فرم HTML: در این روش sessionId مربوط به کاربر جاری درون یک فیلد Hidden یک فرم HTML ذخیره می شود و در هر بار درخواست از سمت کلاینت به سرور ارسال می شود.
  • استفاده از URL: در این روش sessionId مربوط به کاربر جاری درون URL بعنوان پارامتر قرار می گیرد و در هر بار درخواست از سمت کلاینت به سرور ارسال می شود.

البته بعضی از موارد فوق توسط web framework ها نیز برای حفظ رد کاربر (session) استفاده می شوند.

قبل توسط (1.1هزار امتیاز)
+1
بدلیل وجود IP های اشتراکی نمی تونند با IP کار کنند. معمولا علاوه بر sessionId یکسری ID دیگر نیز در سمت سرور نگه داشته میشه که در صورت دزدیده شدن sessionId بتوان تشخیص داد.
سوال شده 10 سال قبل در برنامه نویسی توسط (1.1هزار امتیاز)
ویرایش شده 10 سال قبل توسط
چرا استفاده از cookie برای شناسایی کاربر مناسب نیست؟

سوالات مشابه

0 امتیاز
1 پاسخ 468 بازدید
+1 امتیاز
2 پاسخ 2.9هزار بازدید
سوال شده 10 سال قبل در کامپیوتر و اینترنت توسط kashi (7.2هزار امتیاز)
+1 امتیاز
1 پاسخ 8.9هزار بازدید
+2 امتیاز
2 پاسخ 4.3هزار بازدید
+1 امتیاز
1 پاسخ 1.6هزار بازدید
0 امتیاز
1 پاسخ 403 بازدید
0 امتیاز
1 پاسخ 1.6هزار بازدید
0 امتیاز
1 پاسخ 648 بازدید
0 امتیاز
2 پاسخ 593 بازدید
...