urlsafe_b64encode всегда заканчивается в '='?:

Вызвать отладчик из вашего кода с помощью:

Debugger.Launch();

blockquote>

Просто поместите этот оператор в положение, где вы хотите, чтобы ваш код сломался. [114 ]

См. https://docs.microsoft.com/en-us/dotnet/api/system.diagnostics.debugger.launch?view=netframework-4.7.2

.

8
задан Abgan 16 January 2009 в 23:44
поделиться

3 ответа

Base64 использует '=' для дополнения. Ваша строковая длина в битах не является делимой 24, таким образом, она дополнена '='. Между прочим, '=' должен быть URL, безопасный, поскольку он часто используется для параметров в URL.

Посмотрите это обсуждение, также.

7
ответ дан 5 December 2019 в 17:42
поделиться

'=' для дополнения. Если Вы захотите передать вывод как значение параметра URL, то Вы захотите выйти из него сначала, так, чтобы дополнение не терялось при позже чтении в значении.

import urllib
param_value = urllib.quote_plus(b64_data)

Python просто следует за RFC3548 путем разрешения '=' для дополнения, даже при том, что кажется, что более подходящий символ должен заменить его.

2
ответ дан 5 December 2019 в 17:42
поделиться

Я ожидал бы, что синтаксический анализатор URI проигнорирует "=" в части значения параметра.

Параметры URI: "и", [имя], "=", [значение], затем, таким образом, равняние входят в систему часть значения, безопасно. Незавершенный амперсанд имеет более потенциальный для повреждения синтаксического анализатора.

1
ответ дан 5 December 2019 в 17:42
поделиться
Другие вопросы по тегам:

Похожие вопросы: