2009-03-18 5 views
0

これは1つのキーのみのキーを持つ1つのクッキーで起こります。 値は "ÅÙÏ '<"‰‰ "<"である必要があります。asp-classic Request.Cookiesは、 "ÅÙÏ '<"‰ ""の代わりに1つのクッキーに対してこの値 "θ"を返します。

+0

ああ男の子、少し具体的にこれをもっと細かくしたいと思うかもしれません。 – inspite

+0

そして多分別のフォント、またはユニコードなのでしょうか? –

+0

上記で引用した値にはガベージがあります。あなたが何か違うものが見えるなら、あなたはそれが何であるか期待しているエンコーディングを教えてください。 – Eddie

答えて

0

最終解決:「ユニコード(UTF-8から "正しい" エンコーディング 変更エンコーディング

  • と 名前を付けて保存、別のファイル-codepage 65001" )署名で
  • への "西ヨーロッパ言語(Windowsの場合) - コードページ1252"
2

値は "ÅÙÏ '<"‰‰ "<"である必要があります。

本当にですか?それは、私に壊れた、間違った文字セットのバージョンのように見えます! :-)いずれにしても、Windowsの西ヨーロッパのエンコーディング(cp1252)でその文字列を保存した後、UTF-8として読み込んで「無効文字」コードをすべて削除すると、「θ」が得られます有効なUTF-8文字列。だから、あなたは古典的な読み書きと異なるエンコーディング問題を持っています。

一般的に、非ASCII文字をクッキー(名前または値)に直接置き換えることはできません。何らかのアプリケーションレベルのコード化メカニズムが必要です。最も一般的な方法の1つは、JavaScriptのencodeURIComponentのやり方と同様に、必要な文字のUTF-8表現をURLエンコードすることです。

(残念ながら、ASPの古典は、Unicodeを処理するための非常に貧しいサポートしています。)

0

私たちは、私たちをしています私たちのクッキーと結果の文字のいくつかにエンコーディングが問題を引き起こす可能性があります。だから私たちがやったのは、クッキー文字列を取り、それを16進数でエンコードすることです。 - 問題が解決しました。