01_1_Socket实现

1.什么是MIME

Multipurpos Internet Mail Extension

指明白传送内容的格式

最早用于邮件附件

2.HTTP协议基础

HTTP(Hypertext Transfer Protocol,超文本传输协议)

HTTP是以明文方式发送数据的

用于从WWW服务器传输超文本到本地浏览器的传输协议。

HTTP协议是以TCP/IP为基础的高层协议。

现在广泛使用的版本HTTP/1.1

3.socket实现

import java.io.BufferedReader;

import java.io.BufferedWriter;

import java.io.InputStreamReader;

import java.io.OutputStreamWriter;

import java.net.Socket;

public class TestHTTP {

public static void main(String[] args) throws Exception {

Socket s = new Socket("127.0.0.1", 8080);

//建立一个到服务器的连接,127.0.0.表示要连接的ip, 8080表示要连接的端口

BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(s.getOutputStream()));

//Output只能写 Input只能读 OutputStreamWriter 提供转换的字符流 BufferedWriter 提供缓存功能

bw.write("Get / HTTP/1.1");

//Get 表示处理的方法  /表示处理的资源 HTTP/1.1处理的协议

bw.newLine();

//留一个空行

bw.write("Host: 127.0.0.1:8080");

//指定Host,因为有可能一个IP地址,管理多个域名

bw.newLine();

bw.write("Content-Type: text/html");

//指定访问的是什么类型的资源

bw.newLine();

bw.newLine();

//表示结束

bw.flush();

//清空缓存区的内容

BufferedReader br = new BufferedReader(new InputStreamReader(s.getInputStream()));

String str = null;

while((str = br.readLine()) != null) {

System.out.println(str);

//循环读取从服务端的输入流

}

bw.close();

br.close();

s.close();

//关闭响应的流

}

}

01_1_Socket实现的更多相关文章

随机推荐

  1. uoj#228. 基础数据结构练习题(线段树)

    传送门 只有区间加区间开方我都会--然而加在一起我就gg了-- 然后这题的做法就是对于区间加直接打标记,对于区间开方,如果这个区间的最大值等于最小值就直接区间覆盖(据ljh_2000大佬说这个区间覆盖 ...

  2. 剑指Offer的学习笔记(C#篇)-- 树的子结构

    题目描述 输入两棵二叉树A,B,判断B是不是A的子结构.(ps:我们约定空树不是任意一个树的子结构) 一 . 二叉树的概念         树形结构是一种典型的非线性结构,除了用于表示相邻关系外,还可 ...

  3. 阿里云物联网 .NET Core 客户端 | CZGL.AliIoTClient:7. 服务调用

    文档目录: 说明 1. 连接阿里云物联网 2. IoT 客户端 3. 订阅Topic与响应Topic 4. 设备上报属性 4.1 上报位置信息 5. 设置设备属性 6. 设备事件上报 7. 服务调用 ...

  4. 18.使用for循环计算+1-3+5-7+9-11+13...99的结果

    j = 1 # -1 num1 = 0 #1-3 for i in range(1,100,2): num1 += j * i # -3 j = j * -1 # 1 print(num1) sum1 ...

  5. jsp学习与提高(三)——JSP Cookie 处理

    1.cookie是什么 Cookie是存储在客户机的文本文件,它们保存了大量轨迹信息.在servlet技术基础上,JSP显然能够提供对HTTP cookie的支持. 通常有三个步骤来识别回头客: 服务 ...

  6. Nacos深入浅出(四)

    private void executeAsyncInvoke() { while (!queue.isEmpty()) { NotifySingleTask task = queue.poll(); ...

  7. Hart协议

    官方https://fieldcommgroup.org/technologies/hart/documents-and-downloads-hart 参考网页http://www.eeworld.c ...

  8. P2737 [USACO4.1]麦香牛块Beef McNuggets 数学题 + 放缩思想

    https://www.luogu.org/problem/show?pid=2737#sub 先说一个结论:对于两个数p, q,且gcd(p, q) = 1(这个很重要,是条件来的).他们不能组合成 ...

  9. 整数的lqp拆分

    题目大意 lqp在为出题而烦恼,他完全没有头绪,好烦啊… 他首先想到了整数拆分.整数拆分是个很有趣的问题.给你一个正整数N,对于N的一个整数拆分就是满足任意m>0,a1 ,a2 ,a3…am&g ...

  10. java引用数据类型(类)

    1 引用数据类型分类 类的类型分两种 1)Java提供好的类,如Scanner类,Random类等,这些已存在的类中包含了很多的方法与属性,可供开发者使用.(类的变量是属性) 2)开发者自己创建的类, ...