gpt4 book ai didi

php - 构建一个简单的 RESTful api

转载 作者:IT王子 更新时间:2023-10-28 23:55:34 24 4
gpt4 key购买 nike

我想按照 REST 原则快速制作一个 API - 用于我构建的简单 Web 应用程序。 API 的第一个用途是与 iPhone 应用程序交互。 API 只需要处理几个基本调用,但都需要身份验证,没有任何数据是公开的。

  • 登录/验证用户
  • 获取用户组中的记录列表
  • 再次获取列表,只有那些已经改变的(新添加或更新的)
  • 更新记录

那么,按照 REST 原则,我会设置 uri 方案吗?:

  • mysite.com/api/auth(POST?)
  • mysite.com/api/users(获取)
  • mysite.com/api/update(POST?)

响应将以 XML 格式开始,稍后将以 JSON 格式。

  1. 在网站上,用户使用电子邮件和密码登录。我应该让他们在他们的个人资料页面上获得一个“ token ”以随每个 api 请求一起传递吗? (会使独立的“/auth”URI 资源变得多余)。

  2. 构建响应 xml 的最佳实践?似乎对于 REST,您应该返回 200 ok 和 XML 或实际的正确状态代码,即 401 等

感谢任何一般性指示。

最佳答案

1- 对于 auth,您可能需要考虑像 http-basic 或 digest auth 这样的东西(注意 - 如果不通过 h​​ttps,basic 特别是不安全的)

对于 urls 方案:

  • 如果您利用 basic 或 digest,则不需要/api/auth。
  • /api/group/groupname/可能更规范
  • /api/update 通常会作为/api/users/username (POST) 添加新数据来完成 - 资源是用户 - POST 是动词
  • 否则,您的 API 基本上看起来很正常,这在很大程度上取决于组是否是分层的,以及用户是否必须生活在一个组中 - 如果是这样,您的 url 应该反射(reflect)出这一点并且可以导航。

2- 状态代码应反射(reflect)状态 - 200 表示正常,401 表示访问被拒绝,404 表示未找到,500 表示错误处理。一般来说,如果你有一个好的请求,你应该只返回一个 XML 记录

关于php - 构建一个简单的 RESTful api,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3295931/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com