相关疑难解决方法(0)

如何在Google App Engine上使用HTTP方法DELETE?

我可以在Python Windows SDK中使用此动词.但不是在生产中.为什么?我究竟做错了什么?

错误消息包括(仅通过firebug或fiddler看到)

格式错误的请求

或类似的东西

我的代码看起来像:

from google.appengine.ext import db
from google.appengine.ext import webapp

class Handler(webapp.RequestHandler):
   def delete(self):
       key = self.request.get('key')
       item = db.get(key)
       item.delete()
       self.response.out.write(key)
Run Code Online (Sandbox Code Playgroud)

python google-app-engine http http-delete

7
推荐指数
1
解决办法
2542
查看次数

在HTTP中,PUT和POST是否以不同方式发送数据?

据我所知,你可以通过POST发送JSON数据,但PUT是否应该专门在URI中发送信息,或者你可以同时执行这两项操作吗?

谢谢!

api post http put

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

HTTP PUT的目的是什么?

为什么我们在AJAX中使用方法'PUT'以及它最常用的地方?

例:

$.ajax({
    url: 'script.php',
    type: 'PUT',
    success: function(response) {
        //...
    }
});
Run Code Online (Sandbox Code Playgroud)

为什么作者不是简单地使用GET/POST?

html javascript ajax jquery

7
推荐指数
1
解决办法
1862
查看次数

AWS S3:我应该使用 POST 还是 PUT 请求来上传文件?

我想知道使用 POST 或 PUT 请求将文件上传到 Amazon Web Services S3 的优缺点。

我已经读过像一些SO问题这一个,但我想使用AWS API时知道具体差异。

我设法同时使用了两者,但几乎看不出区别。我通过 AJAX 和 XMLHTTPRequest 对象使用 PUT 和 POST,直接从浏览器上传,node.js 后端生成签名。

我注意到的不同之处在于,当我生成签名时,我无法使用 PUT 限制服务器端的内容类型和长度,但这可能是因为我现在才刚刚学习它。

javascript ajax amazon-s3 amazon-web-services

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

Backbone.save POST而不是PUT

只是一个简短的问题:

拥有模型的新实例并发布model.save()URL设置为/api/store/category,Backbone发布POST.根据我的知识,它应该使用PUT,就像在"PUT或POST:故事的REST"博客文章中提到的那样.

谁是对的?BB或这篇文章的作者?

post put backbone.js

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

为什么要使用 PUT 方法?

使用 POST 似乎没有任何优势。是否存在 PUT 工作得更好/更快/更安全/其他的特定场景?当您可以使用 POST 以基本相同的工作量完成所有事情时,为什么有人要为全新的 http 方法编码?

post http put

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

使用UUID的REST PUT与POST

如果我使用a UUID来将实体标识为我的REST端点的URI的一部分:

/entities/<uuid>/
Run Code Online (Sandbox Code Playgroud)

UUID是由客户在创建新实体时生成的,就使用PUTvs而言,是否有最佳实践POST?换句话说,它UUID是由客户端生成的,而不是由服务器生成的.

如果我要使用PUT,是否预期消息有效负载也包含UUID?在这种情况下,消息以及标识实体的URI都将包含UUID.

有关规范,请参阅:REST RFC

rest post routing http put

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

为什么不将PUT用于需要有效负载的REST查询?

REST建议通过GET方法完成查询(而不是资源创建).在某些情况下,查询数据太大或结构化使得难以放入URL,并且为了解决这个问题,修改RESTful API以支持与主体的查询.

似乎需要body的RESTful查询的约定是使用POST.这里有一些例子:

查询不会修改系统的内部状态,但POST不支持幂等操作.但是,PUT是幂等的.为什么对于需要正文的查询,RESTful API是否将PUT与正文而不是POST一起使用?

注意: 一个流行的问题询问哪个(PUT vs POST)是创建资源的首选.这个问题询问为什么PUT不用于需要实体的查询.

rest

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

在实现RestFul服务中,为什么HTTP方法PUT应该是幂等而不是POST?

互联网上有许多资源可供使用,其中讨论了PUT与POST。但是我不明白这将如何影响在RestFul服务下完成的Java实现或后端实现?我提到的链接如下所述:

https://www.keycdn.com/support/put-vs-post/

https://spring.io/understanding/REST#post

https://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html

http://javarevisited.blogspot.com/2016/10/difference-between-put-and-post-in-restful-web-service.html

例如,假设有一个针对地址的RestFul Web服务。因此,POST /addresses将完成更新地址PUT /addresses/1的工作,并完成创建地址的工作。现在,HTTP方法PUT和POST如何控制后台服务代码在做什么?

PUT /addresses/1 
Run Code Online (Sandbox Code Playgroud)

可能最终在数据库中创建相同地址的多个条目。

所以我的问题是,幂等行为为什么链接到HTTP方法?

您将如何使用指定的HTTP方法控制幂等行为?还是只是建议准则或标准做法?

我不是在寻找什么是幂等行为的解释,但是是什么使我们标记这些HTTP方法呢?

java rest jax-rs

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

使用WCF REST在PUT和POST之间的区别

我试图实现REST WCF以探索PUT和POST动词之间的区别.我已使用该服务在某个位置上传了一个文件.

服务实现如下:

[OperationContract]
[WebInvoke(UriTemplate = "/UploadFile", Method = "POST")]
void UploadFile(Stream fileContents);

public void UploadFile(Stream fileContents)
{
 byte[] buffer = new byte[32768];
 MemoryStream ms = new MemoryStream();
 int bytesRead, totalBytesRead = 0;
 do
 {
       bytesRead = fileContents.Read(buffer, 0, buffer.Length);
       totalBytesRead += bytesRead;

       ms.Write(buffer, 0, bytesRead);
  } while (bytesRead > 0);

  using (FileStream fs = File.OpenWrite(@"C:\temp\test.txt")) 
  { 
      ms.WriteTo(fs); 
   }

  ms.Close();
Run Code Online (Sandbox Code Playgroud)

}

客户端代码如下:

HttpWebRequest request =     (HttpWebRequest)HttpWebRequest.Create("http://localhost:1922   /EMPRESTService.svc/UploadFile");
        request.Method = "POST";
        request.ContentType = "text/plain";

        byte[] fileToSend = File.ReadAllBytes(@"C:\TEMP\log.txt");  // txtFileName contains …
Run Code Online (Sandbox Code Playgroud)

c# wcf wcf-rest

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