•
مرحله ششم: یک Request واقعی رو تصور کن
مثلا مرورگر این درخواست رو فرستاده:
GET /profile HTTP/1.1
سرور هم ممکنه جواب بده:
HTTP/1.1 200 OK
یعنی:
«درخواستت دریافت شد و من تونستم پاسخ بدم.»
این رفتوبرگشت ساده، یکی از پایهایترین
چیزهایی هست که باید در Web Security
یاد بگیری.
مرحله هفتم: یک چیز جالب پیدا کن
حالا داخل Network دنبال Request
هایی بگرد که وقتی روی اونها کلیک
میکنی، اطلاعات بیشتری در Headers
یا Response میبینی.
یا یک URL که داخلش یک پارامتر وجود داره:
?id=123
یا:
?page=2
امروز قرار نیست چیزی رو دستکاری کنیم☺️
امروز باید با درخواستها آشنا بشی و درک
کنی :)
•
•
کسایی که فردا کنکور دارین؛ امیدوارم
پرقدرت و بدون استرس بهترین نتیجه
رو بگیرین❤️✌️🏻
راه های زیادی برای موفقیت وجود داره
که احتمالا یکیش درسه :)
ولی مطمئن باشید بدون تلاش نه به درس
نه به هیچ موفقیت دیگهای نمیشه رسید👏
•
•
روز دوم | Request چیه و مرورگر دقیقاً
چه چیزی برای سرور میفرسته؟🧐
روز قبل فهمیدیم که وقتی یک سـایت رو باز
میکنیم، مرورگر و سرور با هــمـدیگه ارتـبـاط
برقرار میکنن و بینشون درخواسـت و جواب
رد و بدل میشود.
همچنین در تمرین روز اول یاد گرفتیم که
با DevTools وارد بخش Network بـشـیم
و Requestهای مختلفی رو که هـنـگام باز
شدن یک صفحه ارسال میشن ببینیم.🙌
امروز میخوایم یک درخواست رو باز کنیم
و ببینیم دقیقاً از چه قسمتهایی تشکیل
شده.🔥
•
•
قبلش بریم سراغ یک داستان واقعی :
سال ۲۰۱۰، یک ابزار امنیتی به نام Firesheep منتشر شد.
این ابزار توسط اریک باتلر ساخته شده بود
و یک مشکل مهم در امنیت وب را به شکل
بسیار ساده نشان میداد. »»»
در آن سالها بعضی وبسایتها هنگام
ورود کاربر از HTTPS استفاده میکردند،
اما بعد از ورود، تمام ارتباطات کاربر را به
شکل امن ادامه نمیدادند.
در نتیجه مـمـکـن بود رمز عبور مسـتـقیماً
در اختیار مهاجم قرار نگیرد، اما اطلاعات
مربوط به نشست کاربر در معرض خــطـر
باشد.
برای فهمیدن اهمیت این موضوع، باید یک
سؤال بپرسیم:⚠️
سرور از کجا میفهمد درخواست جدیدی که
از مرورگــر دریــافــت کـرده، مربـوط به همـان
کاربری است که چند لحظه قبل واردحساب
شده است؟
اینجا مفهوم Cookie و Session اهمیت پیدا میکنه 👆⭕️
•
•
برای درک بهتر درخواست | Request,
فــرض کــن مـرورگـر این آدرس رو برای
سرور ارسال کرده:
GET /profile?id=123 HTTP/1.1
قسمت اول(GET)، یک Request Method | روش درخواست
روش درخواست مشخص میکنه مرورگر
چه نوع عملی رو از سرور میخواد.
دو روش بسیار مهم برای شروع وجود داره:
GET
برای زمانی که معمولا میخوایم اطلاعاتی رو از سرور دریافت کنیم.
POST
برای زمانی که معمولاً میخوایم اطلاعاتی
را به سرور ارسال کنیم.
برای مثال، وقتی یک صفحه رو باز میکنی،
مرورگر معمولاً از GET استفاده میکنه.
اما وقتـی اطلاعــات یـک فرم را برای سـرور
ارسال میکنی، احتمالا از POST استـفاده
میکنه.
اما قسمت جالبتر Request اینجاست👇
•
•
/profile?id=123
بخش /profile مسیر درخواستِ.✅
یعنی مرورگر درخواست میکنه:
«منبعی به نام profile را میخواهم.»
اما جلوی علامت سؤال:
id=123
به این بخش Query Parameter
یا «پارامتر پرسوجو» گفته میشه. 👉
تعریف پارامتر: اطلاعـاتـی که هـمـراه
درخواست برای سرور ارسال میشود 💻
در این مثال:
id
اسم پارامترِ
123
مقدار پارامترِ
حالا یه مثال سادهتر👇
مثلا یک سایت فروشگاهی داریم
و آدرس صفحه محصول اینه:
/product?id=25
یعنی مرورگر از سرور محصولی با شناسه 25 رو درخواست میکنه😇
•