java - 如何将数据从 html 表单发送到 java 服务器套接字?
问题描述
问题是这样的:我使用 ServerSocket 和 Socket 类创建了一个 java 服务器。html 页面显示正确,但我不知道如何将数据(从输入类型 = 文本)发送到我的 java 服务器,然后显示我在另一个 html 页面上写的消息。
代码如下:
我的服务器类:
private int port;
private ServerSocket ss;
private Socket s;
private PrintWriter pw;
public MyServer(){
port = 1245;
try{
ss = new ServerSocket(port);
System.out.println("server creato");
}
catch(Exception e){
e.printStackTrace();
}
listen();
}
public void listen(){
try{
while(true){
s = ss.accept();
System.out.println("OK");
if(s == null)
System.exit(1);
Client c = new Client(s);
c.start();
}
}catch(Exception e){
e.printStackTrace();
}
}
客户端类(扩展线程):
public Client(Socket s){
this.s = s;
try{
pw = new PrintWriter(s.getOutputStream(), true);
br = new BufferedReader(new InputStreamReader(s.getInputStream()));
f = new File("test.html");
}catch(Exception e){
e.printStackTrace();
}
}
public BufferedReader getBr(){
return this.br;
}
public PrintWriter getPw(){
return this.pw;
}
public File getF(){
return this.f;
}
public void displayHtml(){
try {
FileInputStream fis = new FileInputStream(f);
BufferedReader br2 = new BufferedReader(new InputStreamReader(fis));
StringBuilder sb = new StringBuilder();
String ris = null;
while((ris = br2.readLine()) != null){
sb.append(ris);
//sb.append("\r\n");
}
pw.println("HTTP/1.1 200 OK");
pw.println("Content-Type: text/html");
pw.println("\r\n");
pw.println(sb.toString());
pw.flush();
s.close();
}catch(Exception e){
e.printStackTrace();
}
}
public void
public void run(){
try{
displayHtml();
}catch(Exception e){
e.printStackTrace();
}
}
}
最后,主类:
public static void main(String[] args){
MyServer ms = new MyServer();
}
我正在寻找一个好的解决方案。我不想删除我所有的代码来做到这一点。谢谢 :)
解决方案
推荐阅读
- android - 我可以将手机用作 VIsual Studio 2019 的模拟器吗?
- java - Android Studio ...在意图中将查询值传递给互联网搜索
- revit-api - Revit 在类型目录中使用什么字符编码?
- graph - 此图的名称/类型
- docker - 通过 Azure 应用服务的 Terraform 脚本将变量传递给 Docker Compose
- types - Julia:是否可以将参数字典传递给函数?
- amazon-web-services - 在 AWS Elastic Beanstalk 上运行烧瓶应用程序时出现 504 网关超时
- javascript - 填充所有输入后如何激活动画?
- asp.net-core - 需要服务结构中 http.sys 服务器的客户端证书
- syntax - 什么替换–bwlimit = 如果它被贬低