ASPで開発する際に、デコードの問題に遭遇しました。 ASPでエンコードされたURL文字列を取得するためにリクエストを使用すると、自動的にデコードされますが、request.binaryread(request.totalbytes)は、ポストデータを取得するときにデコードされないため、手動でのみデコードできます。
ASPデコード機能:
関数urldecode(enstr)薄暗い破壊、strspecial dim c、i、v destrow = "" strspecial = "!" "#$%& '()*+、。-_/:; v = eval( "&h"+mid(enstr、i+1,2))if strust(strspecial、chr(v))> 0> 0 then = destr&chr(v)i+2 else v = eval( "&h"+mid(enstr、i+1,2)+mid(enstr、i+4,2))destres = destr&chr(v)i = i+5 End "+"次のurldecode =破壊エンド関数の場合、破壊=破壊&c終了の場合
それは単なる個人的な趣味です。私は自分でコーディングの実装のアイデアを研究し、最終的にあなたの参照のためにエンコード関数を書きました。注:ASPには、組み込みのエンコード機能、つまりServer.urlencodeがあります。
ASPエンコーディング関数:
プライベート関数urlencoding(vstrin)strreturn = "" for i = 1 to len(vstrin、vstrin、i、1)if abs(asc(thischr))<&hff <&thischr innercode = asc = asc(thischr)if innercode = innercode = innercode = hight8(hight +&h10000 and hight8( &hff00)/&hff low8 = innercode and&hff strreturn = strreturn& "%"&hex(hight8)& "%"&hex(low8)end next urlencoding = strreturn end function
中国語でエンコードするときは、ASPに組み込み機能を使用することをお勧めします。上記のエンコード関数はn回テストされており、バグがある場合に備えて問題は見つかりませんでした。
上記は、ASPエンコードとデコード機能に関するものです。すべての人の学習に役立つことを願っています。