সাধারণত, একটি ব্রাউজার কুকিজকে একটি একক Cookie
শিরোনামে ভাগ করে দেয়, যেমন:
Cookie: a=1; b=2
মানক কি এগুলিকে পৃথক শিরোনাম হিসাবে প্রেরণে মঞ্জুরি দেয়:
Cookie: a=1
Cookie: b=2
নাকি তাদের সর্বদা একই লাইনে থাকতে হবে?
উত্তর:
বিষয়টিতে বিশদ অনুসন্ধানের সময় এই পৃষ্ঠায় পরিবর্তিত হয়েছে। থেকে একটি উদ্ধৃতি HTTP State Management Mechanism
, বোঝায় যা RFC 6265 কর্তব্য জিনিষ স্বচ্ছ করে তুলতে হবে:
5.4। কুকি শিরোলেখ
যখন ব্যবহারকারী এজেন্ট একটি HTTP অনুরোধ উত্পন্ন করে, ব্যবহারকারী এজেন্ট একাধিক কুকির শিরোনাম ক্ষেত্র সংযুক্ত করা উচিত নয়।
মনে হচ্ছে একাধিক ব্যবহারের দেখায় Cookie
হেডার হয় , আসলে, নিষিদ্ধ!
Set-Cookie
শিরোনামের সাথে প্রতিক্রিয়া জানাতে পারে : tools.ietf.org/html/rfc6265# পৃষ্ঠা-7
Set-Cookie:a=b;c=d;
চেয়ে বেশি সঠিক Set-Cookie:a=b; Set-Cookie:c=d;
। অনুমানটি বলছে সার্ভারের একাধিক সেট-কুকি শিরোলেখ ক্ষেত্রগুলিকে এক ক্ষেত্রে ফোল্ড করা উচিত নয় , তবে এটি একাধিক সেট-কুকি শিরোলেখ ক্ষেত্রগুলিকে এক প্রতিক্রিয়ায় যুক্ত করতে পারে । আসল বিশ্বে এর অর্থ কী তা হ'ল যখন কোনও প্রক্সি সার্ভার কোনও প্রতিক্রিয়ার সাথে পাশ করে, যদি সেই প্রক্সিটি কুকি সেট করে, তবে এটির জন্য আলাদা সেট-কুকি শিরোনাম ব্যবহার করা উচিত।
এটি এখন HTTP / 2 ( আরএফসি 7540 ) এ অনুমোদিত, যা নির্দিষ্ট করে:
8.1.2.5. Compressing the Cookie Header Field
The Cookie header field [COOKIE] uses a semi-colon (";") to delimit
cookie-pairs (or "crumbs"). This header field doesn't follow the
list construction rules in HTTP (see [RFC7230], Section 3.2.2), which
prevents cookie-pairs from being separated into different name-value
pairs. This can significantly reduce compression efficiency as
individual cookie-pairs are updated.
To allow for better compression efficiency, the Cookie header field
MAY be split into separate header fields, each with one or more
cookie-pairs. If there are multiple Cookie header fields after
decompression, these MUST be concatenated into a single octet string
using the two-octet delimiter of 0x3B, 0x20 (the ASCII string "; ")
before being passed into a non-HTTP/2 context, such as an HTTP/1.1
connection, or a generic HTTP server application.
Therefore, the following two lists of Cookie header fields are
semantically equivalent.
cookie: a=b; c=d; e=f
cookie: a=b
cookie: c=d
cookie: e=f