Расшифровать эмодзи из строки base64 в Java - PullRequest
0 голосов
/ 21 сентября 2018

Я хочу отправить смайлики из javascript в java, а затем отправить уведомление как для Android, так и для приложения IOS, используя облачные сообщения Firebase.Я отправляю строку base64, содержащую смайлики из javascript, в сервлет java и в сервлет, когда я декодирую эту строку base64, получившую вопросительные знаки.Вот мой код JavaScript для кодирования поля сообщения и отправки сообщения сервлету.

function sendNotificationToApp(message, startSession)
{
    **message = window.btoa(unescape(encodeURIComponent( message )))**
    var datastring = "&message="+message;
    $.ajax({
        type: "POST",
        url: base+"/SendAppNotification",
        data: datastring,
        dataType: "text",
        cache:false,
        success: function(data)
        {
            data    = JSON.parse(data);
            if(data["error"] == null){
                console.log("success")
            }
        },
        error: function(error){
          console.log("error : "+error)
       }
    });
}

А вот мой код сервлета.

String message = URLDecoder.decode(request.getParameter("message"),"UTF-8");
byte[] data = Base64.decode(message, Base64.DEFAULT);
message = new String(data, "UTF-8");

В поле сообщения я получил знаки вопроса.Любая помощь будет оценена.Спасибо.

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