从Java中的base64字符串解码表情符号

时间:2018-09-21 09:55:03

标签: javascript java firebase base64

我想将表情符号从JavaScript发送到Java,然后使用Firebase云消息传递向Android和IOS应用发送通知。当我解码base64字符串得到问号时,我正在将包含表情符号的base64字符串从javascript发送到Java servlet和servlet中。 这是我的JavaScript代码,用于编码消息字段并将消息发送到servlet。

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)
       }
    });
}

这是我的servlet代码。

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

在消息字段中,我得到了问号。任何帮助,将不胜感激。 谢谢。

0 个答案:

没有答案