Безопасная сериализация данных для простой HTTP GET & POST связи - PullRequest
2 голосов
/ 01 февраля 2010

Я использую браузер клиента для отправки HTTP-запроса. Для генерации отчета securityToken представляется как POST, для загрузки отчета браузер пользователя должен отправить тот же токен, на этот раз с помощью GET.

Какую кодировку вы бы порекомендовали для securityToken, который фактически представляет зашифрованные данные.

Я пробовал BASE64, но это не удалось, потому что стандарт может содержать символ "+", который переводится в HTTP GET в '' (пробел).

Затем я попробовал URL-кодирование, но это не удалось, потому что для HTTP POST такие вещи, как% 3d, передаются без перевода, но когда браузер выполняет HTTP GET с данными % 3d преобразуется в '='.

Какую кодировку вы бы порекомендовали, чтобы обеспечить безопасную передачу по HTTP POST & GET без неверной интерпретации данных.

Среда - Java, Tomcat.

Спасибо, Максим.

Ответы [ 2 ]

2 голосов
/ 01 февраля 2010

шестнадцатеричная строка.

Apache commons-codec имеет класс Hex , обеспечивающий эту функциональность.

Это будет выглядеть так: http://youraddress.com/context/servlet?param=ac7432be432b21

1 голос
/ 01 февраля 2010

Ну, вы можете оставить Base64 и использовать это решение: Код для декодирования / кодирования модифицированного URL base64

...