问题标签 [put]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
7138 浏览

rest - RESTful API 设计:更新 (PUT) 中的不可更改数据是否应该是可选的?

我正在实现一个 RESTful API,我不确定是否存在无法更改的数据的“社区接受”行为。例如,在我的 API 中有一个“文件”资源,该资源在创建时包含许多在创建后无法修改的字段,例如文件的二进制数据,以及与之关联的一些元数据。此外,“文件”可以具有书面描述和关联的标签。

我的问题涉及对这些“文件”资源之一进行更新。特定“文件”的 GET 将返回与文件关联的所有元数据、描述和标签,以及文件的二进制数据。特定“文件”资源的 PUT 是否应该包含“只读”字段?我意识到它可以采用任何一种方式编码:a)在 PUT 数据中包含只读字段,然后验证它们与原始字段匹配(或发出错误),或 b)忽略 PUT 数据中只读字段的存在因为它们无法更改,如果它们不匹配或丢失,则永远不会发出错误,因为逻辑会忽略它们。

似乎它可以采取任何一种方式并且可以接受。忽略只读字段的第二种方法可以更紧凑,因为 API 客户端可以根据需要跳过发送只读数据;这对于知道自己在做什么的人来说似乎很好......

0 投票
1 回答
397 浏览

php - PHP PEAR HTTP PUT

我遇到了 PHP PEAR 和 HTTP PUT 的问题。我想创建一个 HTTP PUT 请求并附加一个文件并将其发送到 REST 服务。这是我当前的代码:

这段代码应该可以正常工作,但显然不能。我总是得到 REST 存储库的响应,即标头不包含 multipart/form-data。

有谁知道我可以做些什么来让代码工作?感谢期待!

0 投票
4 回答
152031 浏览

php - PHP 卷曲 HTTP PUT

我正在尝试使用 cURL 创建 HTTP PUT 请求,但无法使其工作。我读过很多教程,但没有一个真正奏效。这是我当前的代码:

我也尝试过使用 PHP PEAR,但得到了相同的结果。问题是存储库说没有设置元数据。我真的需要帮助!谢谢!

0 投票
2 回答
3143 浏览

android - 为什么我的 HttpPut 从我的 Android 发送一个 GET 请求?

我尝试从我的 Android 设备连接到 REST Web 服务并在那里放置一些数据,但我得到的只是 GET 结果。甚至我的网络服务器也坚持这是一个 GET 请求。我的代码有什么问题?

0 投票
4 回答
173328 浏览

http - 使用 HTTP PUT 方法测试文件上传

我编写了一个使用 HTTP PUT 方法上传文件的服务。

Web 浏览器不支持 PUT,所以我需要一种测试方法。它作为一个从浏览器点击它的 POST 非常有用。

更新:这是有效的。我试过海报,但它与使用提琴手有同样的问题。您必须知道如何构建请求。curl 解决了这个问题。

0 投票
2 回答
8386 浏览

php - 在 PHP 中发出 REST API 请求

为这个问题的新鲜感道歉。我正在考虑将一个网站的 API 集成到我自己的网站中。以下是他们文档中的一些引用:

目前我们只支持 XML,当调用我们的 API 时,HTTP Accept 头的内容类型必须设置为“application/xml”。

API 使用PUT请求方法。

我有我想要发送的 XML,我有我想要发送到的 URL,但是我如何在 PHP 中构建一个合适的 HTTP 请求,它也将获取返回的 XML?

提前致谢。

0 投票
2 回答
564 浏览

ruby-on-rails - Rails 2.3.8:将按钮显示为超链接

我对 Ruby on Rails 比较陌生。到目前为止,在我的 Rails 2.3.8 应用程序的一个视图中拥有此工作代码:

正如预期的那样,按下控制器中的“应用”按钮调用update。现在我想让按钮以超链接样式显示,我正在寻找最有效的方法来做到这一点。

也许还有其他方法,但我没有弄清楚如何link_to正确使用。它从未在 PUT 请求中传递更新的值。如果您推荐link_to,您能否提供一些提示如何做到这一点。这是非工作代码:

非常感谢。

0 投票
1 回答
616 浏览

json - restkit JSON ios - putObject - 发送类型信息

我在 ios 上使用 restkit,并尝试使用 putObject 方法,我可以使用它并以这种格式发送数据:

{"name":"Marquee 湿衬衫之夜","id":1,"idIcon":1,"note":78,"description":"connard","url":0}

但是我的网络服务期待类似: {"event":{{"name":"Wet shirt night at Marquee","id":1,"idIcon":1,"note":78,"description": “康纳德”,“网址”:0}}

看到区别,类型名称“事件”在开头

你们知道如何设置restkit来发送带有对象数据的对象类型名称吗?

谢谢!

0 投票
1 回答
756 浏览

wcf - 无法将 .svc 文件放入 IIS 托管的 WebDAV 目录 - 日志显示 HTTP 错误 405

我正在尝试通过比 FTP 选项更可靠的方式发布,该选项在 Visual Studio 中非常间歇地工作 - 而且速度非常慢。所以我先问你:2011年,用visual studio来发布,WebDAV是不是最好的选择?

无论如何,我已经启动并运行了由 IIS 7 托管的 WebDAV,并且我设法将其映射为驱动器。我也可以在那里复制文件,除了文件扩展名为 .svc 的任何文件。我可以发布我尝试过的所有其他内容,如果我首先将其重命名为其他内容,也可以发布 .svc 文件,然后在它已经位于 WebDAV 目录中之后重命名。

这是IIS日志:

如您所见,它以 405 结尾。

我设法通过谷歌搜索的唯一类似的事情可以通过配置 applicationHost 文件的 , 和部分来解决。合乎逻辑的事情是检查 .svc 中的条目,但它没有说明 .svc。我也尝试将 applyToWebDAV 设置为 false。

有任何想法吗?

更新:

考虑一下,是否仅仅是 WCF http 处理程序拦截了 url,因为 .svc 已向该处理程序注册?

0 投票
1 回答
6308 浏览

php - 使用 PHP、REST、Flex 和 Amazon S3 进行 PUT/复制

几周以来,我一直在尝试使用网络上可用的示例正确格式化 a REST requestAmazon AWS S3 API但甚至无法成功连接。

我找到了生成签名的代码,找到了格式化“要编码的字符串”的正确方法,以及http headers. 我已经通过signatureDoesNotMatch错误的方式来获取Anonymous users can not perform copy functions, Please authenticate消息。

我有一个成功上传文件的应用程序的工作副本Adobe Flex,但使用它们的“原始”文件名。REST与 the一起使用的Amazon API目的是执行PUT文件的(复制),这样我就可以将它重命名为我的后端系统可以使用的东西。

如果我能找到一种方法让这个REST提交工作,或者Flex在上传时指定一个“新”文件名,我可以一起避免这种REST情况。

如果有人成功地在via上执行了PUT/Copy命令,我会对这是如何完成的非常感兴趣 - 或者 - 如果有人能够使用该方法更改目标文件名,我也将永远感激任何指针。Amazon APIRESTFlex fileReference.browse()


用于此的 PHP 代码如下:

当我提交格式错误或不正确的标头时,我会按预期收到相​​应的错误消息:

询问:

PUT /bucket/1-132-1301047200-1.jpg HTTP/1.1 主机:s3.amazonaws.com x-amz-acl:公共读取连接:keep-alive 内容长度:34102 日期:星期六,2011 年 3 月 26 日 00 :43:36 +0000 授权:AWS -出于安全考虑已删除-:GmgRObHEFuirWPwaqRgdKiQK/EQ=

HTTP/1.1 403 禁止
x-amz-request-id: A7CB0311812CD721
x-amz-id-2: ZUY0mH4Q20Izgt/9BNhpJl9OoOCp59DKxlH2JJrJOksksyKxl8/HtmJrJOk6K
+类型:application/xml
传输编码:chunked
日期:星期六,2011 年 3 月 26 日 00:43:36 GMT
连接:关闭
服务器:AmazonS3
397 SignatureDoesNotMatch我们计算的请求签名与您提供的签名不匹配。检查您的密钥和签名方法。50 55 54 0a 0a 0a 53 61 74 2c 20 32 36 20 4d 61 72 20 32 30 31 31 20 30 30 3a 34 33 3a 33 36 20 2b 30 30 30 30 16 0a 78 2d 2d 61 63 6c 3a 70 75 62 6c 69 69 69 63 2d 72 65 65 61 64 0a 2f 6d 6d 6d 6c 6c 68 2d 70 72 72 6f 64 75 63 74 63 74 69 6f 6e 6 e 2f 6e 2f 6e 2f 31 2d 31 2d 31 33 33 33 32 33 33 33 33 31 33 31 31 31 31 31 31 31 31 31 31 31 31 33 32 30 32 30 32 30 32 30 32 30 32 30 32 30 2DDD 31 2E 70 6A 67A7CB0311812CD721ZUY0mH4Q20Izgt / 9BNhpJl9OoOCp59DKxlH2JJ6K + sksyxI8lFtmJrJOk1imxM / AGmgRObHEFuirWPwaqRgdKiQK / EQ = PUT星期六,2011年3月26日00:43:36 0000的x AMZ-ACL:公共读/bucket/1-132-1301047200-1.jpg-removed为了安全- 0

但是在发送格式正确的请求时,它说我没有经过身份验证:

正在使用的查询:

PUT /1-132-1301047200-1.jpg HTTP/1.1 主机:bucket.s3.amazonaws.com 日期:星期六,2011 年 3 月 26 日 00:41:50 +0000 x-amz-copy-source:/bucket/clock。 jpg x-amz-acl:公开读取授权:AWS -出于安全考虑已删除-:BMiGhgbFnVAJyiderKjn1cT7cj4=

HTTP/1.1 403 禁止
x-amz-request-id:ABE45FD4DFD19927
x-amz-id-2:CnkMmoF550H1zBlrwwKfN8zoOSt7r/zud8mRuLqzzBrdGguotcvrpZ3aU4HR4RoO
内容类型:应用程序/xml
传输编码:分块
日期:星期六,2011 年 3 月 26 日 00:4
服务器:AmazonS3

AccessDenied
匿名用户无法复制对象。请验证
ABE45FD4DFD19927CnkMmoF550H1zBlrwwKfN8zoOSt7r/zud8mRuLqzzBrdGguotcvrpZ3aU4HR4RoO 0
日期:星期六,2011 年 3 月 26 日 00:41:50 GMT
连接:关闭
服务器:AmazonS3