Я хочу создать соединение между java-программой в качестве сервера и greasemonkey (java-скриптом) в качестве клиента.
Я могу получать данные от клиента, но что я должен сделать для отправки данных изсервер клиенту?Я использую OutputStream на сервере для отправки данных клиенту, но, похоже, он не работает.На стороне клиента я использую приведенный ниже код для отправки и получения данных:
GM_xmlhttpRequest({
method: 'POST',
url: "http://localhost:8888",
headers: {
'Content-type' : 'application/x-www-form-urlencoded',
},
data : 'page_contents=' + window.location,
onload : function(responseDetails) {
alert('Request for Atom feed returned ' + responseDetails.status +
' ' + responseDetails.statusText + '\n\n' +
'Feed data:\n' + responseDetails.responseText);
}
});
Я использую OutputStream для на сервере, но кажется, что он не работает или не связывает какой-либо outputStream: (я пробую базовую связь, но это не сработало и только получает данные)
ServerSocket srvr = new ServerSocket(8888);
Socket skt = srvr.accept();
BufferedReader in = new BufferedReader(new InputStreamReader(skt.getInputStream()));
System.out.print("Received string: '");
String input="";
while (!in.ready()) {}
while((input = in.readLine())!=null){
System.out.println("-"+input); // Read one line and output it
}
in.close();
//now I want to send some data to greasmonkey.
PrintWriter out = new PrintWriter(skt.getOutputStream(), true);
System.out.print("Sending string: '" + data + "'\n");
//the line above, never has printed in console. i don't know why?
out.print(data);
}}
Любое предложение будет с благодарностью.
Большое спасибо.