📄 httpsserver.java
字号:
import java.net.*;
import java.io.*;
import javax.net.ssl.*;
import java.security.cert.*;
import java.util.*;
import java.math.*;
// import sun.security.x509.*;
import java.security.*;
public class HttpsServer {
public static void main(String args[ ])throws Exception {
SSLContext context;
KeyManagerFactory kmf;
KeyStore ks;
String pass="mykeyt";
String name="mykeyt";
int i=0;
try {
context=SSLContext.getInstance("TLS");
kmf=KeyManagerFactory.getInstance("SunX509");
FileInputStream fin=new FileInputStream(name);
ks=KeyStore.getInstance("JKS");
ks.load(fin,pass.toCharArray());
kmf.init(ks,pass.toCharArray());
context.init(kmf.getKeyManagers(),null,null);
SSLServerSocketFactory ssf= context.getServerSocketFactory();
ServerSocket ss=ssf.createServerSocket(443);
System.out.println("ok");
System.out.println(ss);
while(true){
System.out.println("---1---");
Socket s=ss.accept( ); //等待请求
System.out.println("---2---");
PrintStream out = new PrintStream(s.getOutputStream( ));
System.out.println("---3---");
BufferedReader in
= new BufferedReader(new InputStreamReader(s.getInputStream( )));
System.out.println("---4---");
String line=null;
System.out.println("now");
while(((line=in.readLine())!=null)&&(!("".equals(line)))){
System.out.println(line);
}
System.out.println("");
StringBuffer buffer=new StringBuffer();
buffer.append("<html> <head></head><body> <h1> Good </Body></html>\n");
String string =buffer.toString();
byte[] data=string.getBytes();
out.write("http/1.0 200 OK\n".getBytes());
out.write(new String("Content-Length: "+data.length+"\n").getBytes());
out.write("Content_Type:text/html\n\n".getBytes());
out.write(data);
out.flush();
out.close();
/*
String info=in.readLine( );
System.out.println("now got "+info);
out.println("HTTP/1.0 200 OK");
out.println("MIME_version:1.0");
out.println("Content_Type:text/html");
i++;
String c="<html> <head></head><body> <h1> hi This is "
+i+"</h1></Body></html>";
out.println("Content_Length:"+c.length( ));
out.println("");
out.println(c);
*/
out.close( );
s.close( );
in.close( );
}
} catch (IOException e) { System.out.println(e);}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -