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


উত্তর:


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.