我正在处理一个JavaScript前端的应用程序,它可以从服务器接收一串八位字节(暂时我使用php的chr()模拟一些数据)。通过LiveConnect将JavaScript中的二进制数据传递到Java小程序
试图将JavaScript中的数据传递到要操纵的小程序中证明是困难的。由于数据的中间字符串可能为零,因此它看起来会在第一个空值进入时终止。它看起来像是一旦二进制数据触及JavaScript变量,则编码会混淆一些字节(或者这可能只是一个问题与我如何显示它)
无论哪种方式,我有什么选择来获取从服务器发送的二进制数据块,并将其放入一个Java小程序来操纵。如果我想维护数据的完整性,是否只能转换为base64(或其他编码)?
所有这些对我来说都是新鲜事物,所以希望我能清楚地理解事物。
非常感谢,但是它仍然看起来像我在路上丢失了一些东西。我在js端使用encodeURI()进行编码(escape()被depricated),并使用java端的URLDecoder进行解码。根据文档,它们似乎完美匹配。一个问题字节是0xC0,它被解码为ffffffef ffffffbf ffffffbd。有任何想法吗? – cmjreyes 2010-11-26 19:46:09
它看起来像一旦JavaScript触及它,我失去了更高的数字字节。如果我从我的测试服务器base64它,它可以处理所有事情,但这不是一种可能性。我得弄清楚别的东西。 – cmjreyes 2010-11-26 21:03:42