我在Heroku上部署了一个简单的Java服务器,我想使用客户端的套接字来连接字符串并向其发送字符串,但是在发送字符串时我没有任何响应。
我尝试将端口号从80更改为443。
The server on Heroku:
public class Server {
public static void main(String[] args) throws IOException {
Integer port = Integer.parseInt(System.getenv("PORT"));
ServerSocket serverSocket = new ServerSocket(port);
Socket clientSocket = serverSocket.accept();
BufferedReader in = new BufferedReader(new InputStreamReader(clientSocket.getInputStream()));
PrintWriter out = new PrintWriter(clientSocket.getOutputStream(), true);
String inputLine;
while((inputLine = in.readLine())!=null) {
out.println(inputLine);
}
}
}
我计算机上的客户端:
public class Client {
public static void main(String[] args) throws IOException {
try {
Socket echoSocket = new Socket("minimal-java-web-app.herokuapp.com", 80);
BufferedReader in = new BufferedReader(new InputStreamReader(echoSocket.getInputStream()));
PrintWriter out = new PrintWriter(echoSocket.getOutputStream(), true);
String inputLine;
out.println("Sent this message to server");
while((inputLine = in.readLine())!=null) {
System.out.println("got message: "+inputLine);
}
echoSocket.close();
}
在运行客户端时,我期望控制台中输出“获取消息:已将此消息发送到服务器”,但我什么也没得到。没有错误或服务器响应。