能够独立部署成服务的协议接口javascript
好比xshell中的上传工具,采用的就是文件传输协议。html
好比qq和微信等采用的就是用户数据协议java
每一种响应码表明了服务端给咱们反馈的响应状态,也就表示咱们这次请求的结果。 1xx:信息响应类,表示接收到请求而且继续处理,即请求的一个中间状态。 2xx:处理成功响应类,表示动做被成功接收、理解和接受。 3xx:重定向响应类,为了完成指定的动做,必须接受进一步处理。 4xx:客户端错误,客户状况包含语法错误或者是不能正确执行。 5xx:服务端错误,服务器不能正确执行一个正确的请求。
HTTP
协议请求响应模型http
协议请求响应模式(一次请求的生命周期或简单的软件分层)具体过程以下:web
场景(登陆) 一、客户端发起请求到api接口层 1.1 用户在客户端填写用户名和密码,点击登陆,发送请求 二、api接收到客户端发起的用户请求 2.1 api对业务逻辑进行验证 2.1.1 验证用户名和密码是否合法 好比:用户名要求必须为真是手机号码(11位,1开头,第二位是三、四、五、六、七、八、9) 若是验证失败,即用户名不合法,那么须要给客户端返回响应码 好比自定义的响应码:10000一、10000二、100003 100001表明用户名格式错误 100002表明用户名或密码错误 100003代码密码格式错误 三、api会将用户输入的数据发给db层 Create、Read、Update、Delete (select * from user where userName = '' and password = '';) 3.1 数据库查询成功则返回1,失败则返回0 四、DB会将返回的查询数据库的条目数返回给api 五、api返回成功或失败的状态码给客户端 六、客户端将返回信息提示给用户
经常使用的HTTP
请求方式shell
GET
请求数据库
http://127.0.0.1:8080?username=zhangsan&password=123456
POST
请求api
url http://127.0.0.1:8080 请求体 { [ "username":"zhangsan"; "password":"123456" ] }
HTTP
请求的方法:安全
HTTP/1.1
协议中共定义了八种方法(有时也叫"动做"),来代表Request-URL
指定的资源不一样的操做方式。服务器
一、 OPTIONS 返回服务器针对特定资源所支持的HTTP请求方法,也能够利用向web服务器发送'*'的请求来测试服务器的功能性 二、 HEAD 向服务器索与GET请求相一致的响应,只不过响应体将不会被返回。这一方法能够再没必要传输整个响应内容的状况下,就能够获取包含在响应小消息头中的元信息。 三、GET 向特定的资源发出请求。注意:GET方法不该当被用户产生"反作用"的操做中。例如在Web Application中,其中一个缘由是GET可能会被网络蜘蛛等随意访问。 四、POST 向指定资源提交数据进行处理请求。(例如提交表单或者上传文件)。数据被包含在请求体中。POST请求可能会致使新的资源的创建和/或已有资源的修改。 五、PUT 向指定资源位置上传其最新的内容。 六、DELETE 请求服务器删除Request-URL所标识的资源 七、TRACE 回显服务器搜狐到的请求,主要用于测试或诊断。 八、CONNECT HTTP/1.1协议中预留给可以将链接改成管道方式的代理服务器。 注意: 1)方法名称是区分大小写的 当某个请求所针对的资源不支持对应的请求方法的时候,服务器应当返回状态码405(Mothod Not Allowed); 当服务器不认识或者不支持对应的请求方法时,应返回的状态码501(Not Implemented) 2)HTTP服务器至少应该事先GET和HEAD/POST方法。
经常使用的TCP/IP协议能够参考微信