慕课网Restful API 实战学习总结

原创 2018年04月16日 18:42:16

一、搭建环境

视频中,老师搭建环境后,Apache的运行端口是80,所以,他在测试api.com时,可以正确显示403(forbidden),而大部门人的80端口是被占用的,所以,不得不改端口,我将端口改为8088后,要测试网站的话,一定要测试api.com:8088,不然会一直显示404,因为127.0.0.1的默认端口是80端口,所以,老师那边可以正常显示。但是我这边就会显示404(not found),但是测试api.com:8088,便可以正常显示了。

二、设计要素

  • 资源路径:/users、/articles
  • HTTP动词:GET、POST、DELETE、PUT
  • 过滤信息:文章的分页筛选
  • 状态码:200、404、422、403
  • 错误处理:输出JSON格式错误信息
  • 返回结果:输出JSON数组和JSON对象

三、HTTP协议-URL

HTTP是一个属于应用层的协议,特点是简捷、快速。
schema://host[:port]/path[?query-string][#anchor]

  • scheme:指定底层使用的协议(例如:http,https,ftp)
  • host:服务器的IP地址或者域名
  • port:服务器端口,默认为80(如果访问的是https协议,默认端口443)
  • path:访问资源路径
  • query-string:发送给http服务器数据
  • anchor:锚

四、HTTP协议-请求

组成格式:请求行、消息报头、请求正文

  1. 请求行
    格式如下:Method Request-URI HTTP-Version CRLF
    举例:GET/HTTP/1.1 CRLF

  2. 请求方法

    • GET:请求获取Request-URI所标识的资源
    • POST:在Request-URI所标识的资源后附加新的数据
    • HEAD:请求获取有Request-URI所标识的资源的响应消息报头
    • PUT:请求服务器存储一个资源,并用Request-URI作为其标识
    • DELETE:请求服务器删除Request-URI所标识的资源
    • OPTIONS:请求查询服务器的性能,或者查询与资源相关的选项和需求

五、HTTP协议-响应

组成格式:状态行、消息报头、响应正文

  1. 状态行:
    HTTP-Version Status-Code Reason-Phrase CRLF
    HTTP/1.1 200 OK

  2. 常用状态码

    • 200 OK //客户端请求成功
    • 400 Bad Request //客户端请求有语法错误,不能被服务器所理解
    • 401 Unauthorized //服务器收到请求,但是拒绝提供服务
    • 404 Not Found //请求资源不存在
    • 500 Internal ServerError //服务器发生不可预期的错误
    • 503 Server Unavailable //当服务端不能处理客户端的请求

六、RESTful架构与其他架构的区别

  1. SOAP WebService
    WebService是一种跨编程语言和跨操作系统平台的远程调用技术。
    WebService通过HTTP协议发送请求和接受结果时采用XML格式封装,并增加了一些特定的HTTP消息头,这些特定的HTTP消息头和XML内容格式就是SOAP协议。
  2. 效率和易用性
    SOAP由于各种需求不断扩充其本身协议的内容,导致在SOAP处理方面的性能有所下降。同时在易用性方面以及学习成本上也有所增加。
    RESTful由于其面向资源接口设计以及操作抽象简化了开发者的不良设计,同时也最大限度的利用了HTTP最初的应用协议设计理念。
  3. 安全性
    RESTful对于资源型服务接口来说很合适,同时特别合适对于效率很高,但是对于安全要求不高的场景。
    SOAP的成熟性可以给需要提供给多开发语言的,对于安全性要求比较高的接口设计带来便利。
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Jane_96/article/details/79964546

【慕课网实战课程笔记】Vue.js高仿饿了么外卖App

第1章:课程简介 第2章:Vuejs介绍 Ctrl+Alt+l 快捷整理代码 第3章:Vue-cli开启Vuejs项目 全局安装vue-c...
  • lsy__lsy
  • lsy__lsy
  • 2018-04-13 10:10:32
  • 62

慕课网Java相关课程学习项目源码

下载资源 http://download.csdn.net/download/weixin_39549656/10219542
  • weixin_39549656
  • weixin_39549656
  • 2018-01-23 12:56:34
  • 85

超星<em>慕课</em>助手

超星<em>慕课</em>助手 2018-03-30 上传大小:82.<em>52</em>MB 辅助 超星网选课助手,为了解决看...《超星助手<em>破解版</em>》.. 立即下载 上传者: siolls 时间: 2009-01-15 综合...
  • 2018年03月31日 00:00

REST与RESTFul API最佳实践(转载来自于慕课网)

REST与RESTFul API最佳实践
  • u014142379
  • u014142379
  • 2017-08-27 10:52:59
  • 246

Restful程序设计学习总结(一)

最近在项目中使用到了Restful,那么Restful是什么?下面我就总结一下、并且通过一个案例做一下基于Restful的实现。(PS:由于也是这方面的初学者,所以仅是谈下自己的理解,并不会深入探讨)...
  • qq_25464285
  • qq_25464285
  • 2016-09-16 08:47:46
  • 436

学习网站分享

站长素材:http://sc.chinaz.com/编程问答平台:https://stackoverflow.com/炫酷特效网址:1. 前端炫酷特效http://jsrun.net可以在线调试js代...
  • u013268969
  • u013268969
  • 2018-03-21 10:52:22
  • 16

Vysor PRO 破解方法

前言 16年的时候用了Vysor,确实方便好用。陆续从最早的版本到现在,以前可用的破解方法随着版本的更新都失效了,于是有了我现在正在使用的破解方案:使用旧版本。 方法 (有评论指出1...
  • mp624183768
  • mp624183768
  • 2017-12-01 11:56:29
  • 150

跟着 Github 学习 Restful HTTP API 设计

近几年提供 HTTP API 服务的公司越来越多,许多公司都把 API 作为产品重要的一部分,作为服务提供出去。而微服务的兴起,也让企业内部开始重视和频繁使用 HTTP API 。好的 HTTP AP...
  • tnt_scott
  • tnt_scott
  • 2017-03-21 10:18:09
  • 1814

RESTFUL API学习教程

RESTFUL API学习教程 构建RESTful Web服务,像其他编程技能一样,一部分是艺术,一部分是科学。随着互联网行业的发展,创造一个REST API变得更加具体与新兴的最佳实践。由于RES...
  • s164828378
  • s164828378
  • 2016-06-21 21:10:14
  • 1820
收藏助手
不良信息举报
您举报文章:慕课网Restful API 实战学习总结
举报原因:
原因补充:

(最多只允许输入30个字)