ホームページ  >  記事  >  ウェブフロントエンド  >  cookies_javascript のヒントで特殊文字を使用すべきではない理由

cookies_javascript のヒントで特殊文字を使用すべきではない理由

WBOY
WBOYオリジナル
2016-05-16 18:23:13811ブラウズ

指定された名前と値を持つ Cookie を構築します。

名前は RFC 2109 に準拠する必要があります。つまり、名前には ASCII 英数字のみを含めることができ、カンマ、セミコロン、空白を含めたり、$ 文字で始めることはできません。 Cookie の名前は、作成後に変更できません。

その値は、サーバーが送信するために選択したものであれば、setValue メソッドを使用して作成後に変更できます。

デフォルトでは、Cookie は Netscape Cookie 仕様に従って作成されます。バージョンは setVersion メソッドで変更できます。

上記は Java API ドキュメントの Cookie クラスのコンストラクターの説明です。のポイント 名前と値に使用できる文字を紹介します。

パラメータ名は RFC2109 仕様に従う必要があります。つまり、name パラメータには文字または数字のみを含めることができ、コンマ、セミコロン、スペース、ドル記号を含めることはできません。 Cookie の name 属性は、設定後に変更することはできません。

パラメータ値はサーバーによって設定された任意の値にすることができ、値は setValue メソッドを通じてリセットできます。

しかし、そうではありません! !

(1) 値にカンマを含めることはできません。値にカンマが含まれる場合、プログラムはコンパイルできません。

値にカンマが含まれる場合は次のようになります。

Cookie pwdCookie = new Cookie("option", "block1,block2")
例外は次のとおりです。
java.lang.IllegalArgumentException: block1,block2

Cookie を操作する JavaScript に関する別の記事で、次のように述べられています:
Cookie の名前または値にはセミコロンを使用できません ( ;) 、カンマ (,)、等号 (=)、およびスペース。

つまり、Cookie には特殊文字を使用しないようにしてください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。