相关疑难解决方法(0)

3917
推荐指数
30
解决办法
164万
查看次数

POST和PUT HTTP REQUEST有什么区别?

他们似乎都在向身体内的服务器发送数据,那么是什么让他们与众不同呢?

post http put

751
推荐指数
14
解决办法
59万
查看次数

大多数Web浏览器中是否提供PUT,DELETE,HEAD等方法?

我在这里看到了几个问题,例如如何调试RESTful服务,其中提到:

不幸的是,相同的浏览器不允许我测试HTTP PUT,DELETE,甚至在某种程度上测试HTTP POST.

我也听说过浏览器只支持GET和POST,来自其他一些来源:

但是,Firefox中的一些快速测试显示发送PUTDELETE请求按预期工作 - XMLHttpRequest成功完成,并且请求以正确的方法显示在服务器日志中.我是否缺少某些方面,例如跨浏览器兼容性或非明显的限制?

browser ajax http cross-browser

596
推荐指数
7
解决办法
23万
查看次数

REST URI约定 - 创建资源时的单数或复数名称

我是REST的新手,我发现在一些RESTful服务中,他们使用不同的资源URI进行更新/获取/删除和创建.如

  • 创建 - 使用/ resource(单数)在某些地方使用POST方法(观察复数)使用/ resources
  • 更新 - 使用/ resource/123和PUT方法
  • 获取 - 使用/ resource/123和GET方法

我对这个URI命名约定有点困惑.我们应该使用复数或单数来创建资源?决定时应该有什么标准?

rest resources uri naming-conventions

491
推荐指数
15
解决办法
16万
查看次数

带有URL查询参数的HTTP POST - 好主意与否?

我正在设计一个API来通过HTTP,我想知道是否使用HTTP POST命令,但只使用URL查询参数而没有请求体,是一个很好的方法.

注意事项:

  • "良好的网页设计"要求通过POST发送非幂等操作.这是一种非幂等行为.
  • 当URL中存在请求参数时,更容易开发和调试此应用程序.
  • 该API不适合广泛使用.
  • 似乎在没有正文的情况下发出POST请求会花费更多的工作,例如Content-Length: 0必须明确添加标头.
  • 在我看来,没有正文的POST与大多数开发人员和HTTP框架的期望有点相反.

通过URL查询而不是请求体在POST请求上发送参数是否还有其他缺陷或优势?

编辑:正在考虑的原因是操作不是幂等的,并且除了检索之外还有副作用.请参阅HTTP规范:

特别是,已经建立了这样的惯例:GET和HEAD方法不应该具有采取除检索之外的动作的重要性.这些方法应该被认为是"安全的".这允许用户代理以特殊方式表示其他方法,例如POST,PUT和DELETE,以便使用户意识到正在请求可能不安全的操作.

...

方法也可以具有"幂等"的属性(除了错误或到期问题)N> 0个相同请求的副作用与单个请求相同.方法GET,HEAD,PUT和DELETE共享此属性.此外,方法OPTIONS和TRACE不应该有副作用,因此本质上是幂等的.

rest http

434
推荐指数
6
解决办法
36万
查看次数

REST嵌套资源的最佳实践是什么?

据我所知,每个资源应该只有一个规范路径.因此,在下面的示例中,优秀的URL模式是什么?

以公司的休息代表为例.在这个假设的例子中,每个公司拥有 0个或更多部门,每个部门拥有 0个或更多员工.

没有关联公司,部门就不可能存在.

没有相关部门,员工就不能存在.

现在我会找到资源模式的自然表示.

  • /companies 一系列公司 - 接受新公司的接受.获取整个系列.
  • /companies/{companyId}一家公司.接受GET,PUT和DELETE
  • /companies/{companyId}/departments接受新项目的POST.(在公司内部创建一个部门.)
  • /companies/{companyId}/departments/{departmentId}/
  • /companies/{companyId}/departments/{departmentId}/employees
  • /companies/{companyId}/departments/{departmentId}/employees/{empId}

考虑到约束,在每个部分中,我觉得如果有点深度嵌套,这是有道理的.

但是,如果我想列出(GET)所有公司的所有员工,我的困难就来了.

最合适的资源模式将映射到/employees(所有员工的集合)

这是否意味着我应该/employees/{empId}也是因为如果是这样,那么有两个URI可以获得相同的资源?

或者整个架构可能会被展平,但这意味着员工是一个嵌套的顶级对象.

在基本级别,/employees/?company={companyId}&department={deptId}返回与最深层嵌套模式完全相同的员工视图.

URL模式的最佳实践是什么,其中资源由其他资源拥有但应该可以单独查询?


更新:请参阅下面的答案,看看我做了什么.

rest api-design

270
推荐指数
6
解决办法
8万
查看次数

PUT,POST和PATCH有什么区别?

HTTP协议中的PUT,POST和PATCH方法有什么区别?

http http-post http-put http-patch

228
推荐指数
10
解决办法
16万
查看次数

在HTML表单中使用PUT方法

我可以在HTML表单中使用PUT方法将数据从表单发送到服务器吗?

html forms

153
推荐指数
6
解决办法
16万
查看次数

什么是最好/常见的RESTful url动词和动作?

我正在尝试找到有关最佳和最常见的RESTful网址操作的一些信息.

例如,您使用什么URL来显示项目的详细信息,编辑项目,更新等.

/question/show/<whatever>
/question/edit/<whatever>
/question/update/<whatever> (this is the post back url)
/question/list   (lists the questions)
Run Code Online (Sandbox Code Playgroud)

哼.感谢任何人的帮助:)

rest

83
推荐指数
2
解决办法
5万
查看次数

PUT和DELETE HTTP请求方法的用处是什么?

我已经阅读了很多相关内容,但无法就此主题得出结论.

但我从未使用过PUT或DELETE HTTP Request方法.我倾向于在系统(我的应用程序或网站)的统计数据可能不受影响(如产品列表)时使用GET,并在受影响时使用POST(下订单).是不够还是我错过了什么?

http httprequest web-deployment web

83
推荐指数
3
解决办法
11万
查看次数