使用 ASP.NET Core MVC 建立 Web APIhtml
使用 ASP.NET Core MVC 建立 Web API(一)数据库
使用 ASP.NET Core MVC 建立 Web API(二)编程
使用 ASP.NET Core MVC 建立 Web API(三)json
使用 ASP.NET Core MVC 建立 Web API(四)api
Http定义了与 服务器的交互方法,其中除了通常咱们用的最多的GET,POST这两个方法以外, 其实还有PUT和DELETE。浏览器
PUT一般用于向服务器发送请求,若是URI不存在,则要求服务器根据请求建立资源,若是存在,服务器就接受请求内容,并修改URI资源的原始版本。若是新的资源被建立,这个原始服务器就必须经过201(Created)响应通知用户代理。若是已有资源被修改,则发送200或者204响应,表示成功完成了该请求。服务器
PutBookItem
与 PostBookItem
相似,可是使用的是 HTTP PUT。 响应是 204(无内容)。 根据 HTTP 规范,PUT 请求须要客户端发送整个更新的实体,而不单单是更改。若是在调用 PutBookItem
时出错,请先调用 GET
方法以确保数据库中有指定的书籍信息。app
在Visual Studio 2017中打开BookController.cs文件,添加如下 PutBookItem
方法:async
// PUT: api/Book/5 [HttpPut("{id}")] public async Task<IActionResult> PutBookItem(int id, Book item) { if (id != item.ID) { return BadRequest(); } _context.Entry(item).State = EntityState.Modified; await _context.SaveChangesAsync(); return NoContent(); }
PutBookItem
方法在进行 PUT 调用以前,在数据库中必需要有所要修改的书籍信息。请先调用 GET 方法以确认数据库中存在进行 PUT 调用的书籍信息数据。post
1) 在Visual Studio 2017中按F5,启动BookApi应用程序。
2) 打开Firefox浏览器,并打开 Rester,在Reseter中,将 HTTP 方法设置为 PUT
。
3) 选择“Headers”选项卡,选择“Content-Type”选项,并将值设置为 JSON (application/json)。
4) 而后选择“BODY”选项卡,在请求正文中,输入书籍信息的 JSON,以下图:
JSON字符串:{
"id": 24,
"name": "Python编程实例",
"releaseDate": "2018-03-02",
"price": 59.49,
"author": "马瑟斯",
"publishing": "机械工业出版社",
"rowVersion": "AAAAAAAANrE="
}
5) 使用鼠标左键,单击“SEND”按钮。 响应返回204,此次修改为功。结果以下图。
6) 以下图,咱们对ID=24的书籍信息进行了修改。咱们来看一下更新先后的变化。
咱们经过Http定义的DELETE方法删除一条书籍信息。DELETE请求就是执行相应的删除操做,配合数据库进行相应的删除动做。
DeleteBookItem
使用的是 HTTP DELETE。 响应是 204(无内容)。
在Visual Studio 2017中打开BookController.cs文件,添加如下 DeleteBookItem
方法:
// DELETE: api/Book/5 [HttpDelete("{id}")] public async Task<IActionResult> DeleteBookItem(int id) { var book = await _context.Book.FindAsync(id); if (book == null) { return NotFound(); } _context.Book.Remove(book); await _context.SaveChangesAsync(); return NoContent(); }
在进行 DELETE 调用以前,在数据库中必需要有所要删除的书籍信息。请先调用 GET 方法以确认数据库中存在进行 DELETE 调用的书籍信息数据。
1) 在Visual Studio 2017中按F5,启动BookApi应用程序。
2) 打开Firefox浏览器,并打开 Rester,在Reseter中,将 HTTP 方法设置为 DELETE
。
3) 而后在URL输入框中输入要删除的对象URI,例如 http://localhost:5000/api/book/24
4) 使用鼠标,点击“Send”按钮。以下图。
5) 删除成功,以下图。
6)若是数据库中没有咱们所要删除的数据,则会提示以下图。
7) 咱们在浏览器中查询刚才的URI地址,以下图。数据已经不存在了。