如何开发RESTful API

RESTful API设计强调资源导向,无状态操作,通过HTTP方法(GET, POST, PUT, DELETE等)完成增删改查操作。URL清晰,通常只包含名词。常见的HTTP状态码在REST中有特定含义,如200表示成功,201表示创建,400表示错误请求,401表示未授权,403表示禁止,404表示未找到,500表示服务器错误。此外,HEAD用于获取响应头,OPTIONS用于查看支持的请求方法,TRACE用于诊断。" 1756455,237001,Spring JdbcTemplate DAO优化:初始化、连接池与查询缓存,"['Spring框架', '数据库连接池', 'AOP编程', '缓存技术']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

RESTFul API有哪些特点:

  1. 基于“资源”,数据也好、服务也好,在RESTFul设计里一切都是资源。
  2. 无状态。一次调用一般就会返回结果,不存在类似于“打开连接-访问数据-关闭连接”这种依赖于上一次调用的情况。
  3. URL中通常不出现动词,只有名词
  4. URL语义清晰、明确
  5. 使用HTTP的GET、POST、DELETE、PUT来表示对于资源的增删改查
  6. 使用JSON不使用XML

    我举个例子:
    网站:/get_user?id=3
    RESTFul: GET /user/3 (GET是HTTP类型)

常用的请求方式:

  • GET(SELECT):从服务器取出资源(一项或多项)
  • POST(CREATE):在服务器新建一个资源
  • PUT(UPDATE):在服务器更新资源(客户端提供完整资源数据)
  • PATCH(UPDATE):在服务器更新资源(客户端提供需要修改的资源数据)
  • DELETE(DELETE):从服务器删除资源

一些不常用的请求方式:

  • HEAD:HEAD和GET类似,只不够HEAD只会返回response的头部,也就是响应头,并不会返回响应体。这一方法可以在不必传输整个响应内容的情况下,就可以获取包含在响应消息头中的元信息。
  • OPTIONS:返回服务器针对特定资源所支持的HTTP请求方法。也可以利用向Web服务器发送'*'的请求来测试服务器的功能性。
  • TRACE:回显服务器收到的请求,主要用于测试或诊断。
  • CONNECT:HTTP/1.1 协议中预留给能够将连接改为管道方式的代理服务器。

常用返回状态码:

HTTP状态码,在REST中都有特定的意义:200,201,202,204,400,401,403,500。

  • GETPUTPATCH请求成功时,要返回对应的数据,及状态码200,即SUCCESS
  • POST创建数据成功时,要返回创建的数据,及状态码201,即CREATED
  • DELETE删除数据成功时,不返回数据,状态码要返回204,即NO CONTENT
  • GET 不到数据时,状态码要返回404,即NOT FOUND
  • 任何时候,如果请求有问题,如校验请求数据时发现错误,要返回状态码 400,即BAD REQUEST
  • 当API 请求需要用户认证时,如果request中的认证信息不正确,要返回状态码 401,即NOT AUTHORIZED
  • 当API 请求需要验证用户权限时,如果当前用户无相应权限,要返回状态码 403,即FORBIDDEN
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值