এইচটিটিপি প্রোটোকলে কীভাবে কুকিগুলি পাস করা হয়?


উত্তর:


295

সার্ভারটি তার প্রতিক্রিয়া শিরোনামে একটি কুকি ক্ষেত্র সেট করার জন্য নিম্নলিখিতগুলি প্রেরণ করে।

Set-Cookie:নাম =মান

যদি কোনও কুকি সেট থাকে তবে ব্রাউজারটি তার অনুরোধ শিরোনামে নিম্নলিখিতটি প্রেরণ করে।

Cookie:নাম =মান

দেখুন HTTP- র কুকি আরও তথ্যের জন্য উইকিপিডিয়া এ নিবন্ধ।


এটা কি সত্য যে কুকি কেবল GET / POST ক্রিয়া দিয়ে কাজ করে তবে সংযোগ নয়?
— পার্লদেভ

5
@ পার্লডেভ আমি আরএফসি 2109 তে দেখতে পাচ্ছি এমন কিছুই নেই যা বলে যে এটি জিইটি / পোস্ট ব্যতীত অন্য অনুরোধগুলির সাথে কাজ করা উচিত নয়, তবে আমি সন্দেহ করি যে ব্রাউজার এবং সার্ভার বাস্তবায়নগুলি সে ক্ষেত্রে এটি প্রয়োগ করতে পারে না।
— দিন

5
নোট করুন যে আরএফসি 2109 অনুসারে যদি কোনও ব্যবহারকারী এজেন্ট বা ব্রাউজার একাধিক কুকিজ প্রেরণ করে তবে সেগুলি সেমিকোলন দ্বারা Cookie: name1=value1; name2=value2; ...
— বিচ্ছিন্ন

34

অনুরোধে (ক্লায়েন্ট -> সার্ভার) এবং প্রতিক্রিয়াতে (সার্ভার -> ক্লায়েন্ট) উভয়ই এইচটিটিপি শিরোনাম হিসাবে কুকিজ পাস করা হয়।


2
সুতরাং যে কোনও অনুরোধ করা হয়েছে, সমস্ত কুকি ইপসো পাঠানো হয়?
— বিকেএসপুরগাঁও

32

এটি অন্যান্য উত্তরে যা লিখিত হয়েছে তা বাদে, কুকির পথে সম্পর্কিত অন্যান্য বিবরণ, কুকির সর্বাধিক বয়স, এটি সুরক্ষিত আছে কি না সেট-কুকির প্রতিক্রিয়া শিরোনামেও পাস করা হয়নি। এই ক্ষেত্রে:

Set-Cookie:নাম =মান [ ; expires=তারিখ ] [ ; domain=ডোমেন ] [ ; path=পথ ] [ ; secure]


যাইহোক, পরবর্তী এইচটিটিপি অনুরোধ করার সময় ক্লায়েন্টের দ্বারা এই সমস্ত বিবরণ আবার সার্ভারে দেওয়া হয় না।

আপনি HttpOnlyআপনার কুকির শেষে পতাকাও সেট করতে পারেন , তা বোঝাতে যে আপনার কুকিটি কেবলমাত্র স্বতঃস্ফূর্ত এবং জাভাস্ক্রিপ্ট কোড দ্বারা স্ক্রিপ্টগুলিতে অ্যাক্সেসের অনুমতি দেওয়া উচিত নয়। এটি সেশন-হাইজ্যাকিংয়ের মতো আক্রমণ প্রতিরোধ করতে সহায়তা করে।

আরও তথ্যের জন্য, আরএফসি 2109 দেখুন । নিকোলাস সি জাকাসের নিবন্ধটি দেখুন, এইচটিটিপি কুকিজ ব্যাখ্যা করেছে ।


2
ওয়েকব্যাকের লিঙ্কের চেয়ে জাকাসের নিবন্ধটির এখানে সরাসরি লিঙ্ক দেওয়া হয়েছে: হিউম্যানহোকসডস
— জোসেফ

13

শ্রদ্ধা হিসাবে উদাহরণ লিপি তৈরি করুন:

#!/bin/bash

http_code=200
mime=text/html

echo -e "HTTP/1.1 $http_code OK\r"
echo "Content-type: $mime"
echo
echo "Set-Cookie: name=F"

তারপরে এক্সিকিউটেবল বানান এবং এভাবে চালিত হন।

./resp | nc -l -p 12346

ব্রাউজারটি খুলুন এবং ইউআরএল ব্রাউজ করুন: http: // লোকালহোস্ট: 1236 আপনি ব্রাউজার দ্বারা প্রেরিত কুকির মান দেখতে পাবেন

    [এএএএ @ বিবিবিবিবিবি] $। / অভিযোগ | এনসি-এল-পি 12346
    জিইটি / এইচটিটিপি / ১.১
    হোস্ট: এক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্সসেক্স 2323
    সংযোগ: বাঁচিয়ে রাখুন
    ক্যাশে-নিয়ন্ত্রণ: সর্বাধিক বয়স = 0
    গ্রহণ করুন: পাঠ্য / এইচটিএমএল, অ্যাপ্লিকেশন / এক্সএইচটিএমএল + এক্সএমএল, অ্যাপ্লিকেশন / এক্সএমএল; কিউ = 0.9, চিত্র / ওয়েবপি, * / *; কিউ = 0.8
    আপগ্রেড-অনিরাপদ-অনুরোধগুলি: 1
    ব্যবহারকারী-এজেন্ট: মজিলা / 5.0 (উইন্ডোজ এনটি 6.1) অ্যাপলওয়েবকিট / 537.36 (কেএইচটিএমএল, গেকোর মতো) ক্রোম / 49.0.2623.112 সাফারি / 537.36
    স্বীকৃতি-এনকোডিং: জিজিপ, ডিফল্ট, এসডিচ
    স্বীকৃতি-ভাষা: এন-ইউএস, এন, কিউ = 0.8, রু; কিউ = 0.6
    কুকি: নাম = এফ

3
যদি একাধিক কুকি থাকে? তারা কমা দ্বারা পৃথক করা হয়?
— মার্ক বুকেইমা

তারা একটি নতুন কুকি হিসাবে সেট করা আছে মনে। কুকি: নাম = এফ কুকি: নাম = এ
— ইজেভেদো

2
@ মার্কবুকাইমা, ডকস.মাইক্রোসফটকম /en-us/windows/desktop/wininet/ http- কুকি দেখুন । তাদের পাঠানো হয়েছে: কুকি: <নাম> = <মূল্য> <[; <নাম> = <মূল্য>>] ...
— বেন হুইলার
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.