RESTful

RESTful = Representational State Transfer 即表现层状态转移 加 ful (即形容词后缀) 则表示是形容词性的

这样说可能不好理解,表现层应该就是我们操作的对象即资源,通过CRUD等操作 使用不同的请求方式 

GET(获取资源)

POST(创建资源)

PUT(更新资源)

PATCH(局部更新)

DELETE(删除资源)

以GET,POST为例

    [HttpGet("{id}")]
        public IActionResult Get(string id)
        {
            var data = new GoodsEnt()
            {
                id = id,
                name = "iphone11s pro max",
                price = 9999,
                num = 100
            };

            return Ok(data);
        }
  [HttpPost]
        public IActionResult Post([FromBody] GoodsInfo goodsInfo)
        {
            if (goodsInfo == null)
            {
                return BadRequest();
            }
            string id = Guid.NewGuid().ToString();
            var data = new GoodsEnt()
            {
                id = id,
                name = goodsInfo.name,
                price = goodsInfo.price,
                num = goodsInfo.num
            };

            return CreatedAtRoute(new { id = id }, data);
        }

  前端使用post方式创建资源,这里我们使用CreatedAtRoute返回(需要引用.net core mvc),他会在header里多返回一个拼接好的地址,这意味着我们post完之后直接可以使用这个地址来请求get方法

 

 若在HTTPGet后面加“{id}”,我们还可以http://localhost:5000/api/Goods/caaf4477-4e5c-40db-bba3-363fcbf916a6 这样访问。

那RSETful风格有什么好处呢?

1.统一资源接口

CRUD接口名字一致,无需要再创建其他接口名字

2.职责清晰

通过不同的请求方式,可以很清晰的知道每个接口的作用

 

posted @ 2020-04-12 23:34  《赤伶》  阅读(62)  评论(0编辑  收藏  举报