我正在开发一个Web API,我在其中以JSON格式从应用程序发送数据,其中包含一个图像作为我需要在服务器上解码的base64字符串。
下面是解码字符串
的代码def imageString=object.image
Base64 coder = new Base64()
def decode=coder.decode(imageString)
会抛出此错误:
无法将对象'[B @ 6aec0bd1'与类'[B']转换为类'javax.ws.rs.core.Response'。 Stacktrace如下: 消息:无法将对象'[B @ 6aec0bd1'与类'[B''转换为类'javax.ws.rs.core.Response'
对此有什么可行的解决方案?
答案 0 :(得分:1)
如果你有一个base64编码的字符串,你可以用它来转换为字节数组:
def imageString
def byteArray = imageString.decodeBase64()
但是,在您的异常中,object.image
似乎已经是一个字节数组,而不是一个字符串:java类型描述符[B
表示一个原始字节数组。这表明它可能已经从其他地方的base64转换过来了。
答案 1 :(得分:0)
你可以试试这个。
def imageString=object.image
Base64 coder = new Base64()
byte[] decoded=coder.decodeBase64(imageString)
String s == new String(decoded)