mea*_*ers 20 rest post http put asp.net-web-api
我的用户在iOS应用中输入一些信息字段.必须在我的服务器上验证此信息,该服务器具有RESTful API.验证后,iOS应用程序的UI会更改以指示结果.
GET,PUT或POST似乎都不合适,因为我没有获得资源,也没有创建或更新资源.
实现此验证的最佳拟合REST操作是什么?
小智 7
我建议使用一个ValidationResource和两个请求。此资源的每个实例代表一组数据的验证。工作流程:
1.新建 ValidationResource
POST /path/to/validations
201 Created
Location: /path/to/validations/<unique-id-of-this-validation>2. 查询结果
GET /path/to/validations/<unique-id-of-this-validation>200 OK
{'valid': true}或{'valid': false}这是一种 RESTful 方法,其中验证是具有服务器状态的资源。
我的用户在iOS应用中输入一些信息字段.必须在我的服务器上验证此信息,该服务器具有RESTful API.验证后,iOS应用程序的UI会更改以指示结果....我没有获得资源,也没有创建或更新资源.
既然你没有保存任何东西(不修改任何资源),我认为这对我来说在技术上比REST更多RPC.
以下是我的意见,所以不要把它当成福音:
如果信息只是提交而且您说是或否,而您没有保存,我会说没问题POST.
如果实际上正在保存/更新信息,那么选择正确的HTTP方法将更加相关.
POST = CREATE / SUBMIT (in an RPC context)
PUT = UPDATE (or CREATE if there is nothing to UPDATE)
Run Code Online (Sandbox Code Playgroud)
Google 建议使用 REST API 的自定义方法
对于自定义方法,它们应使用以下通用 HTTP 映射:
https://service.name/v1/some/resource/name:customVerb
使用 : 而不是 / 将自定义动词与资源名称分隔开的原因是为了支持任意路径。例如,取消删除文件可以映射到 POST /files/a/long/file/name:undelete
来源: https: //cloud.google.com/apis/design/custom_methods
因此,对于验证,URL 应为 POST /resource:validate
| 归档时间: |
|
| 查看次数: |
11829 次 |
| 最近记录: |