-1

我想用套接字向 java 服务器发送一条消息,它应该响应。

InputStreamReader inputStream = new InputStreamReader(server.getInputStream());
BufferedReader input = new BufferedReader(inputStream);
String clientSentence = input.readLine();
System.out.println(clientSentence);

这个无限,所以我无法向我的 php 套接字连接发送响应。

PHP:

$socket = socket_create(AF_INET, SOCK_STREAM, 0) or die("Could not create socket\n");
$result = socket_connect($socket, $host, $port) or die("Could not connect to server\n");
$st="testSalt,broadcast";
$length = strlen($st);

socket_write($socket, $st, $length);

$resp = socket_read($socket, 1024);
4

2 回答 2

3

使用换行符终止 PHP 套接字中的字符串以匹配readLineJava 服务器的语句

$st = "testSalt,broadcast\n";
于 2013-06-24T18:31:23.747 回答
1

我对 PHP 了解不多,但在我看来,如果您按$st原样发送内容,Java 套接字将不会读取任何换行符,因此input.readLine()调用将挂起直到Socket关闭。

于 2013-06-24T18:33:08.977 回答