Java 在这段代码中,什么决定了什么被发送回客户端?TCP套接字

Java 在这段代码中,什么决定了什么被发送回客户端?TCP套接字,java,sockets,tcp,Java,Sockets,Tcp,在下面的代码中,什么决定了什么将被发送回客户端(PHP页面)。我正试图改变这一点,以便它向PHP页面发送一个变量,并返回一条错误消息,该错误消息是根据java代码中的操作定义的 编辑:为了回答一些问题,我想做的是这样 使用套接字向java脚本发送字符串,并将其转换为java脚本中使用的变量。它将运行一些if语句,我需要将错误语句设置为一个变量,比如说“reply”。我需要发送“回复”,然后返回到PHP文件 public class MyJavaServer { public static voi

在下面的代码中,什么决定了什么将被发送回客户端(PHP页面)。我正试图改变这一点,以便它向PHP页面发送一个变量,并返回一条错误消息,该错误消息是根据java代码中的操作定义的

编辑:为了回答一些问题,我想做的是这样

使用套接字向java脚本发送字符串,并将其转换为java脚本中使用的变量。它将运行一些if语句,我需要将错误语句设置为一个变量,比如说“reply”。我需要发送“回复”,然后返回到PHP文件

public class MyJavaServer {
public static void main(String[] args) {

int port = 20222;
ServerSocket listenSock = null; //the listening server socket
Socket sock = null;             //the socket that will actually be used for communication

try {

   listenSock = new ServerSocket(port);

   while (true) {       //we want the server to run till the end of times

       sock = listenSock.accept();             //will block until connection recieved

       BufferedReader br = 
          new BufferedReader(new InputStreamReader(sock.getInputStream()));
       BufferedWriter bw = 
          new BufferedWriter(new OutputStreamWriter(sock.getOutputStream()));
       String line = "";
       while ((line = br.readLine()) != null) {
           bw.write("PHP said: " + line + "\n");
           bw.flush();
       }

       //Closing streams and the current socket (not the listening socket!)
       bw.close();
       br.close();
       sock.close();
   }
} catch (IOException ex) {
   ex.printStackTrace();
}
}
}

如果我没有弄错你的问题,那么答案发送给同伴的那一行就是

bw.write("PHP said: " + line + "\n");

它将给定的字符串写入
bw

,但实际上并不清楚您要做什么。目前它实际上只是一个echo服务器。在我的PHP端,虽然响应是用$sock发送的:$reply=socket\u read($sock,10000,PHP\u NORMAL\u read)//从socket读取响应,这意味着什么?如果我没弄错的话,说的PHP代码准确地读取了用
bw.write()
编写的内容。我不明白它在哪里发回数据,上面的注释大概是0。所以我可以在代码中设置,比如说correct=“correct”,如果我使用bw.write(correct),它将返回变量correct中的文本“correct”?确切地说,这就是它的工作方式。如果您从任何内容派生变量内容并发送该内容,则发送的正是该内容。@Snwspeckle使用
socket\u read(…)
接收响应。