Кодировка символа ASCII 0 завершает строку запроса в классическом ASP - PullRequest
0 голосов
/ 03 апреля 2012

Я получил закодированную строку запроса, которая включает ASCII Char 0 (http://localhost/Test_Authentication.asp?token=%13%23%02%00%01%01%00%01%01%05%02%02%03%00%02%02%0A%0A%0A%0A%0A%0A048), и когда я получаю значение, строка заканчивается в этой позиции (%00).Как мне решить эту проблему?

Ниже приведен мой код.

Response.CharSet = "utf-8";
Session.CodePage=65001;

var strToken = (Request.QueryString("token").Count > 0)?Request.QueryString("token")(1):"";

1 Ответ

1 голос
/ 03 апреля 2012

% 00 - это ASCII для нулевого символа. Я подозреваю, что именно поэтому строка заканчивается в этой точке.

Я бы предложил использовать другой формат или метод для создания хешированного токена, возможно, вместо этого, который создает его как шестнадцатеричное значение, например;

B73A21FBCE3921E5DD0C935AB4D710DD

MD5-хэш обычно выражается в виде 32-значного шестнадцатеричного числа. Это будет намного удобнее для передачи в строке запроса.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...