JavaScript не может получить пакеты Java через расширение Google Chrome
JavaScript не может получить значения EiD из Java в JavaScript. Как я могу это исправить?
JavaScript, расширение Google Chrome:
port.onMessage.addListener(function(message) { // from .exe
sendToWebSite(JSON.stringify(message));
});
Java отправляет данные EiD в JavaScript:
public static void sendMessage(String msgdata) {
try {
int dataLength = msgdata.length();
System.out.write((byte) (dataLength & 0xFF));
System.out.write((byte) ((dataLength >> 8) & 0xFF));
System.out.write((byte) ((dataLength >> 16) & 0xFF));
System.out.write((byte) ((dataLength >> 24) & 0xFF));
// Writing the message itself
System.out.write(msgdata.getBytes());
System.out.flush();
} catch (IOException e) {
JOptionPane.showMessageDialog(null, "error in sending message to JS");
}
}
msgdata = как показано ниже
1 ответ
Решение
Следующие работы.
String tmp = Beid.bid(); //big string with \n and hash picture:
String[] output = tmp.split("picture:");
tmp = output[0]; //how to avoid split picture:?
tmp = tmp.replaceAll("(\r\n|\n)", "<br/>");
sendMessage("{\"msg\" : \"" + tmp + "\"}");
РЕДАКТИРОВАТЬ:
- Windows 10 не работала, потому что у нее была старая Java, после установки Java 8 она работала.