网络
1.连接到服务器
使用Telnet:
输入telnet time-a.nist.gov 13连接到 NTST(National Institute and Technology) 服务器获取时间。
服务器程序会在远端一直运行,等待任何连接到端口号(port)为13端口的网络连接。端口号不是物理设备而是一个抽象。当操作系统接受到一个 网络包裹(network package) 向13端口发送请求时,就会唤醒监听的listening server建立客户服务器的连接,直到一方退出连接。
域名在本地客户端会被转化为IP地址,以此地址发送一个连接请求到服务器,建立到端口的连接。
可以访问域名+端口,并携带HTTP协议的请求头,这样就可以直接进行HTTP交互了。
使用java连接服务器:
创建 Socket 对象,传入访问地址和端口,连接错误会抛出 UnknownHostException 。通过 getInputStream 方法获取输入流读取网络传输的数据。
public static void main(String[] args) throws IOException {
try(Socket s = new Socket("time-a.nist.gov", 13);
Scanner in = new Scanner(s.getInputStream(), StandardCharsets.UTF_8)){
while(in.hasNext()){
String line = in.nextLine();