问题标签 [httpverbs]

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 回答
12623 浏览

ajax - Laravel 中的 PATCH AJAX 请求

是否可以向 laravel 发出 AJAX PATCH 请求,或者我是否仅限于 POST?Laravel 在输入隐藏字段中使用 PATCH,但是,我没有使用表单元素——只是在单击时应该部分更新记录的按钮(通过 AJAX 请求)。

这条路线会是什么样子?

路由文件

Route::patch('questions/{id}', 'QuestionController@update')->before('admin');

我不确定 laravel 路由是否支持 PATCH。

控制器

JS

我只是在寻找清晰度,谢谢!

0 投票
2 回答
14208 浏览

asp.net - HTTP 错误 400:请求动词在 IIS 8.5 中无效

我在 Windows Server 2012 R2(IIS 版本 8.5.9600.16384)中托管了 ASP NET 4.5 应用程序。但是偶尔我会收到一个错误,比如 Bad Request - Invalid Verb HTTP Error 400。从一个页面转到另一个页面时,请求动词无效。没有出现此错误的特殊顺序或特定页面。

httperr 日志文件向我显示了一个错误,例如

我检查了这篇文章http://support.microsoft.com/kb/828726但这里它适用于 Microsoft Internet Information Services (IIS) 6.0。我也可以为 iis 8.5 做这个修补程序吗?我在互联网上搜索过这个问题,但无法获得大量信息。那么,谁能帮我解决这个问题。

使用 Fiddler 我得到了请求的原始数据

Windows Server 2012 R2 的请求过滤设置为

在此处输入图像描述

任何帮助,将不胜感激。

0 投票
3 回答
309 浏览

c# - MVC4 API Post 动词抛出 http 404

我正在尝试基于 Asp.Net MVC4 web api 框架创建一个 REST api。请求工作得GET很好。服务器忽略所有其他动词。它只是说以下内容:

尽管示例错误来自 Track 控制器,但所有其他控制器都有相同的问题。

这是我试图调用的控制器 Track 上的方法:

我已经尝试过使用这样的JSON对象:

我尝试使用“正常”的方式:

上面示例中的“0000”是真实身份的替代品。

可以肯定的是,我还发布了Register()from WebApiConfig.cs

0 投票
0 回答
1800 浏览

c# - 在控制器上找不到公共操作方法 - HEAD 请求

我看到很多以下错误,我认为这是对操作方法的 HEAD 请求(可能来自机器人):

我的操作方法最初仅设置为接受 GET 请求,但我现在已将其更改为也接受 HEAD 请求,例如:

但是,当我测试页面的 HEAD 请求时,我在响应中看到相同的错误和 404 状态代码。

请问有人知道是什么原因造成的吗?

更新以包括控制器继承(为简单起见删除了很多):

我的控制器...

...从 BasicContentPageController 继承...

...从 MyBasePageController 继承...

0 投票
1 回答
160 浏览

forms - HTTP 方法(动词)有什么用?

我已经阅读了几个关于 HTTP 方法的资料,但我仍然不清楚最简单的事情:它们有什么用?

我看到的每个来源都指出了何时应该使用特定的方法,但它在实践中会发生什么变化?比如说,GET 和 POST 之间处理请求的方式有什么区别吗?

或者也许这些方法可以让我们在一个 URL 上处理多种行为?

最后,浏览器呢?表单只能发出 GET 和 POST 请求,它们以不同的方式处理它们。POST 表单“在后台”发送数据,而 GET 在 URL 中传递它们。它与协议有什么关系,还是只是浏览器的约定?

预先感谢您为我澄清。:)

0 投票
1 回答
79 浏览

rest - 请求重新处理失败的异步任务时正确的 REST 端点

想象一个用于请求文件的系统是从一个特定的 URL 上传的。

对该端点进行 POST 以启动文件传输。但是考虑到文件可能很大,并且该过程可能需要一段时间,服务器会返回 202 响应。

一段时间后,执行 GET 以

如果该文件的返回状态仍处于挂起状态,那么我们想告诉服务器再次尝试传输,因为我们认为它已超时。

我感到困惑的是适当的 REST 端点/HTTP 动词将触发服务器重新处理该文件。

0 投票
3 回答
9149 浏览

ajax - 如何让 PUT 和 DELETE 动词与 IIS 上的 WebAPI 一起使用

我正在使用 WebAPI PUT 和 DELETE 方法通过 AJAX 使用 jQuery 从我的网站执行操作。我的服务器是安装了 Plesk 的 Windows Server 2008 R2。POST 和 GET 请求工作正常,但 PUT 和 DELETE 失败。

401 Unauthorized当我第一次将我的站点部署到服务器时,我最初得到了响应。然后我执行了一些操作,它变成了405 Method not allowed.

我现在正处于收到内部服务器错误的地步:

处理程序“ExtensionlessUrlHandler-Integrated-4.0”在其模块列表中有一个错误模块“ManagedPipelineHandler”

现在,有很多关于这个的帖子,遗憾的是我还不能让它工作。

这是我尝试过的:

  • web.config为 WebDAV 处理程序和模块添加了删除标签
  • 设置权限以在处理程序映射中执行脚本和可执行文件
  • 在 IIS 中添加 PUT 和 POST 动词
  • 将 PUT 和 POST 动词添加到web.config
  • 下载 .NET Framework 并执行“修复”
  • 如本答案所示,重新注册 .NET Framework
  • 调查了CORS,但我没有做任何跨站点脚本,它只是从同一个域调用的AJAX

我怎样才能摆脱这条消息并让我的 PUT 和 DELETE 工作?

这是我的 web.config

0 投票
5 回答
2440 浏览

api - REST API 真的是 RESTful 的吗?

我是这个游戏的新手,所以我可能会误解一些事情。实际上,如果有人告诉我我对事情有误解,那将是一个人情。也许这个人会足够体贴,给我指明正确的道路。但...

适用于 Web 服务 ( http://en.wikipedia.org/wiki/Representational_state_transfer#Applied_to_web_services ) 的 REST的“准则”或“最佳实践”之一是在进行调用时应该使用正确的HTTP 方法(确实我误解了吗?)到 REST API 的。

但是看看网络上的许多 API 实现,我看到的是100% 对它们的调用实际上是GET调用,根据它们的URI,API 将被解释为 HTTP 动词或方法之一.

因此,例如,查看 Twitter 的 REST API 文档(https://dev.twitter.com/rest/public),它原则上只定义了两个动词/方法(GET 和 POST),实际上已经发送了所有调用作为 GET 并且基于 GET 调用中的 URI,由 API 解释并采取行动。

例子:

获取状态/查找https ://api.twitter.com/1.1/statuses/lookup.json

POST 状态/更新PUT?):https ://api.twitter.com/1.1/statuses/update.json

在这两种情况下,调用本身都是使用 GET 进行的,并且 URI 的最后一部分将其定义为真正的 GET 或 POST。

总之,要真正实现 RESTful, Web 服务的 REST API 的客户端实现不应该使用正确的 HTTP 动词/方法吗?

我错过了什么?

0 投票
1 回答
478 浏览

c# - 仅对 ASP.NET MVC 站点的某些区域启用 PUT 动词

我在 web.config 中使用以下行在我的网站上启用 PUT 动词

但是,我只希望将其应用于我们的 /admin 区域。如何选择将此配置仅应用于特定区域?我试图在 area 文件夹中添加一个新的 web.config,但没有成功。

有任何想法吗?

0 投票
0 回答
830 浏览

controller - Yii2 正在接受 POST 数据 - 路由无效?

我可能会遗漏 Yii2 的基本概念,但我只是想将表单提交给控制器操作,而当这种情况发生时,我总是得到InvalidRouteException. 控制器称为“列表”,是ListController扩展的类Controller

据我了解,我需要设置Urlmanager允许控制器接受 POST,然后设置动词过滤器以允许控制器接受特定操作的 POST。