У меня есть приложение Spring Boot и NodeJS. Где Spring boot имеет набор API, которые вызываются из приложения NodeJS.
Из-за бизнес-требований я шифрую какое-то значение в приложении Spring Boot и отправляю его в приложение NodeJS.
В потоке приложения мне пришлось отправить зашифрованный токен из приложения NodeJS в приложение Spring Boot, где я буду выполнять расшифровку для дальнейшей обработки.
Теперь, когда я отправляю зашифрованный токен в приложение Spring Boot, я вижу, что некоторые символы пропускаются. Например, + заменяется на (новая строка или пустая строка), и из-за этого я не могу выполнить дешифрование.
Чтобы быть более точным, ..1nfppOsSaMxTBIPq1x16K9L68Mo+JaaDNrgiNvkdWVOasyRCeh7rsEJEyd/syxiO.. заменен на ..1nfppOsSaMxTBIPq1x16K9L68Mo JaaDNrgiNvkdWVOasyRCeh7rsEJEyd/syxiO... Я думаю, это как-то связано с характером encoding или escaping.
Я попытался установить content-type в заголовке запроса, но безуспешно.
Кто-нибудь может мне помочь, как решить эту проблему?
На стороне NodeJS я использую node-rest-client для отправки запроса POST. Алгоритм AES используется для шифрования и дешифрования.
Тип содержимого - «application / json», но проблема заключалась в кодировке, как указано в ответе. Спасибо!!




Похоже, ваш токен был отправлен как параметр url, и сервер пытается его декодировать.
Просто попробуйте закодировать токен на стороне клиента с помощью функции encodeURIComponent.
Вы используете HTTP или другой протокол? если http, то какой тип содержимого заголовка запроса