相关疑难解决方法(0)

REST中的PUT与POST

根据HTTP/1.1规范:

POST方法用来请求原始服务器接受被附在请求由标识的资源的新下属实体Request-URIRequest-Line

换句话说,POST用于创建.

PUT方法请求将所包含的实体存储在提供的实体下Request-URI.如果Request-URI引用已经存在的资源,则封闭的实体应该被视为驻留在源服务器上的实体的修改版本.如果Request-URI未指向现有资源,并且该URI能够被请求用户代理定义为新资源,则源服务器可以使用该URI创建资源.

也就是说,PUT用于创建或更新.

那么,应该使用哪一个来创建资源?或者需要支持两者?

rest post http put

5227
推荐指数
34
解决办法
227万
查看次数

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

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

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

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

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

browser ajax http cross-browser

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

PUT和DELETE应该用在表格中吗?

假设我的Web应用程序在服务器端完全支持PUT和DELETE,我应该使用它们吗?

基本上我的问题是有多少浏览器支持这个:

<form method="PUT">
Run Code Online (Sandbox Code Playgroud)

要么

<form method="DELETE">
Run Code Online (Sandbox Code Playgroud)

除了兼容REST之外,使用这两种HTTP方法有什么好处吗?(假设替换这两种方法是常用的POST)

html rest http cross-browser

70
推荐指数
4
解决办法
7万
查看次数

在Symfony 3中不允许使用405方法

我有这条路线的路线

/**
 * @Method({"DELETE"})
 * @Route("/secure/users")
 */
Run Code Online (Sandbox Code Playgroud)

当我尝试做一个cUrl

<html>
    <head>
        <meta charset="UTF-8" />
        <title>An Error Occurred: Method Not Allowed</title>
    </head>
    <body>
        <h1>Oops! An Error Occurred</h1>
        <h2>The server returned a "405 Method Not Allowed".</h2>

        <div>
            Something is broken. Please let us know what you were doing when this error occurred.
            We will fix it as soon as possible. Sorry for any inconvenience caused.
        </div>
    </body>
</html>
Run Code Online (Sandbox Code Playgroud)

我也尝试启用

Request::enableHttpMethodParameterOverride();
Run Code Online (Sandbox Code Playgroud)

在app.dev和app_dev.php中,我可以处理PUT请求.

php rest symfony

6
推荐指数
1
解决办法
5163
查看次数

http请求删除并放置

下面是我用于获取和发布 HTTP 请求的代码。我想知道的是如何执行删除和放置的 HTTP 请求。我已经让 get 和 post 工作成为可能。我想知道如何根据下面的代码删除和放置。当我想将其更改为删除时,在我的邮政编码中更改什么?缺少什么?我想使用 ID 删除,例如“id”:16,

let parameters = ["name": "test", "desc": "test" , "reward":"1.00" , "sched":"2018-04-05T11:49:51+08:00",  "occurrence":["name": "once"]
    , "status": "created",  "created_by": "test@gmail.com","created_for": "test.com"] as [String : Any]

guard let url = URL(string: "http://test.tesst.eu:8000/api/v1/test/") else { return }
var request = URLRequest(url: url)
request.httpMethod = "POST"
request.addValue("application/json", forHTTPHeaderField: "Content-Type")
guard let httpBody = try? JSONSerialization.data(withJSONObject: parameters, options: []) else { return }
request.httpBody = httpBody

let session = URLSession.shared
session.dataTask(with: request) { (data, response, …
Run Code Online (Sandbox Code Playgroud)

httprequest ios swift

5
推荐指数
1
解决办法
8475
查看次数

POST vs PUT vs DELETE

我从来没有真正理解为什么我需要 PUT 和 Delete 请求方法。

在我的代码中,我一直在使用post,只是执行后端代码来添加/删除某些内容。

我这样做是错误的还是可以一直使用POST?

我的例子:

  @RequestMapping(value = "/delete-images", method = RequestMethod.POST)
public @ResponseBody void deleteImages(@RequestParam("imageIDs") String[] imageIDs) {
    Docker.deleteImages(imageIDs);
}
Run Code Online (Sandbox Code Playgroud)

http

0
推荐指数
1
解决办法
9297
查看次数

标签 统计

http ×4

rest ×3

cross-browser ×2

ajax ×1

browser ×1

html ×1

httprequest ×1

ios ×1

php ×1

post ×1

put ×1

swift ×1

symfony ×1