对于想了解大多数Web浏览器中是否提供PUT、DELETE、HEAD等方法?的读者,本文将是一篇不可错过的文章,我们将详细介绍大多数web网页使用的格式是什么,并且为您提供关于403Forbidden
对于想了解大多数 Web 浏览器中是否提供 PUT、DELETE、HEAD 等方法?的读者,本文将是一篇不可错过的文章,我们将详细介绍大多数web网页使用的格式是什么,并且为您提供关于403 Forbidden Error for .Net Core 3.1 Web Api 仅适用于 Delete & PUT 方法、都可以放什么,什么作用?、ASP.NET 核心 Web API 模板的 PUT、DELETE 不起作用错误 404、c# – 为什么ReadOnlyCollection <>包含FindAll(),FindFirst()等方法,的有价值信息。
本文目录一览:- 大多数 Web 浏览器中是否提供 PUT、DELETE、HEAD 等方法?(大多数web网页使用的格式是什么)
- 403 Forbidden Error for .Net Core 3.1 Web Api 仅适用于 Delete & PUT 方法
- 都可以放什么,什么作用?
- ASP.NET 核心 Web API 模板的 PUT、DELETE 不起作用错误 404
- c# – 为什么ReadOnlyCollection <>包含FindAll(),FindFirst()等方法,
大多数 Web 浏览器中是否提供 PUT、DELETE、HEAD 等方法?(大多数web网页使用的格式是什么)
我在这里看到了几个问题,其中提到:
不幸的是,同一个浏览器不允许我测试 HTTP PUT、DELETE,在某种程度上甚至是 HTTP POST。
我还听说浏览器仅支持 GET 和 POST,来自其他一些来源,例如:
- http://www.packetizer.com/ws/rest.html
- http://www.mail-archive.com/jmeter-user@jakarta.apache.org/msg13518.html
- http://www.xml.com/cs/user/view/cs_msg/1098
但是,Firefox
中的一些快速测试表明发送PUT
和DELETE
请求按预期工作——XMLHttpRequest
成功完成,并且请求以正确的方法显示在服务器日志中。我是否缺少某些方面,例如跨浏览器兼容性或不明显的限制?
答案1
小编典典不,HTML 5 规范提到:
method 和 formmethod 内容属性是具有以下关键字和状态的枚举属性:
关键字 get ,映射到状态 GET,表示 HTTP GET 方法。GET 方法应该只请求和检索数据,应该没有其他效果。
关键字 post ,映射到状态 POST,表示 HTTP POST 方法。POST
方法请求服务器接受要处理的提交表单的数据,这可能导致将项目添加到数据库、创建新的网页资源、更新现有页面或所有提到的结果.关键字 dialog ,映射到状态对话框,表示提交表单的目的是关闭表单所在的对话框(如果有),否则不提交。
这些属性的无效值默认值是 GET 状态
即 HTML 表单仅支持 GET 和 POST 作为 HTTP 请求方法。一种解决方法是使用隐藏的表单字段通过 POST 通过 POST
隧道传输其他方法,该字段由服务器读取并相应地分派请求。
然而,所有主要网络浏览器(IE、Firefox、Safari、Chrome、Opera)中的 XMLHttpRequest(即 AJAX 调用)的实现
都 支持 GET 、 POST 、 PUT 和 DELETE 。 __
403 Forbidden Error for .Net Core 3.1 Web Api 仅适用于 Delete & PUT 方法
如何解决403 Forbidden Error for .Net Core 3.1 Web Api 仅适用于 Delete & PUT 方法
在 .Net Core 3.1 和 angular 中的应用,在本地完美运行。我托管了托管服务提供商之一的相同应用程序。
我收到错误“403 - 禁止:访问被拒绝”。用于 Web api 响应中的 PUT 和 DELETE 方法。我不知道为什么 GET 和 POST 方法在同一个应用程序中工作。
ASP.NET Core with IIS - HTTP Verb Not Allowed
上面的链接有一些相同的问题,但出现 405 错误。同一线程中给出的解决方案也尝试过,但对我不起作用。
请帮忙。
解决方法
您的前端是否有角度?如果是,您必须添加auth承载头以正确放置和删除。
,我向我的托管服务提供商提出了一张票。他们进行了一些设置,然后就可以正常工作了。
,此代码对我有用。
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<location path="." inheritInChildApplications="false">
<system.webServer>
<modules runAllManagedModulesForAllRequests="false">
<remove name="WebDAVModule" />
</modules>
<handlers>
<add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModuleV2" resourceType="Unspecified" />
</handlers>
<aspNetCore processPath="dotnet" arguments=".\\XXXXXXXXXXX.dll" stdoutLogEnabled="false" stdoutLogFile=".\\logs\\stdout" hostingModel="inprocess" />
</system.webServer>
</location>
</configuration>
都可以放什么,什么作用?
<head></head>元素描述了文档的各种属性和信息,其中包括文档的标题、在 Web 中的位置以及和其他文档的关系等。
<title> 在 HTML/XHTML 文档中是必须的。
<title> 元素:
定义了浏览器工具栏的标题
当网页添加到收藏夹时,显示在收藏夹中的标题
显示在搜索引擎结果页面的标题
<html>
<head>
<base href="http://static.cnblogs.com/" />
</head>
<body>
<img src = "./images/logo_gray.gif" />
</html>
这事我们用相对路径./images/logo_gray.gif加载的图片,却变成了:http://static.cnblogs.com/images/logo_gray.gif的图片路径,这就是base元素的作用,可以给页面的链接加上默认的路径或者打开方式,这个实例1表现的是:给页面的链接加上默认的路径。
实例2:
<html>
<head>
<base target = "_blank" />
</head>
<body>
<a href = "http://www.baidu.com">这个页面会在新窗口上打开!</a>
<a href = "http://www.baidu.com">同上,新窗口打开!</a>
</html>
这个实例2表现的是:给页面的链接设置默认的打开方式。
三、HTML<link>元素
<link>元素定义了文档与外部资源之间的关系,通常用于链接到样式表。
在HTML中<link>元素没有结束标签,在XHTML中<link>元素必须被正确的关闭。
<link>元素是空元素,它仅包含属性。
<link>元素只能存在于 head 部分,不过它可出现任何次数。
属性学习网址:http://www.w3school.com.cn/tags/tag_link.asp
四、HTML<style>元素
<style>元素定义了HTML文档的样式引用地址,在<style>元素中需要指定样式文件来渲染HTML文档。
在HTML和XHTML中没有差异
属性学习网址:http://www.w3school.com.cn/tags/tag_style.asp
五、HTML<meta>元素
<meta>元素通常用于指定网页的描述,关键字,文件的最后修改时间,作者等其他元数据。
<meta>元素提供了元数据,元数据不显示在页面上,但会被浏览器解析,元数据可以使用于浏览器(如何显示内容或重新加载页面),搜索引擎(关键字)等。
<meta>元素永远放置于<head>区域。
在HTML中<meta>元素没有结束标签,在XHTML中<meta>元素必须被正确的关闭。
元数据总是以名称/值的形式被成对传递的。
学习网址:http://www.w3school.com.cn/tags/tag_meta.asp
六、HTML<script>元素
<script> 标签用于定义客户端脚本,比如 JavaScript。
script 元素既可以包含脚本语句,也可以通过 src 属性指向外部脚本文件。
必需的 type 属性规定脚本的 MIME 类型。
学习网址:http://www.w3school.com.cn/tags/tag_script.asp
总结:
ASP.NET 核心 Web API 模板的 PUT、DELETE 不起作用错误 404
如何解决ASP.NET 核心 Web API 模板的 PUT、DELETE 不起作用错误 404
我什至在 .config 文件中尝试了几次修改以启用这些动词,但没有任何效果。 GET 方法工作正常,但对于 PUT 和 DELETE 是 404。
我已经尝试删除 WebDav 模块和其他与 IIS 相关的修改。
这是我的控制器:
[HttpPut("{id:length(24)}")]
public IActionResult Update(string id,Client clientIn)
{
var client = _clientService.Get(id);
if (client == null)
{
return NotFound();
}
_clientService.Update(id,clientIn);
return NoContent();
}
[HttpDelete("{id:length(24)}")]
[Route("api/Clients/{id}")]
public IActionResult Delete(string id)
{
var client = _clientService.Get(id);
if (client == null)
{
return NotFound();
}
_clientService.Remove(client.ClientId);
return NoContent();
}
解决方法
不知道你是怎么设置HttpGet的。在这段代码中,由于您限制了 id 的长度,因此 id 必须最多 24 个字符才能被映射。你可以这样改。
[HttpPut("{id:maxlength(24)}")]
public IActionResult Update(string id,Client clientIn)
{
//
}
你可以参考这个route constraints。
c# – 为什么ReadOnlyCollection <>包含FindAll(),FindFirst()等方法,
你只是放弃并返回可写的集合吗?您是否返回只读集合,然后将它们包装在可写的多样性中? AHHHHH.
更新:
谢谢我熟悉框架设计指南,这就是为什么团队使用Fxcop来强制执行它.然而,这个团队和VS 2005一起生活(我知道,我知道)并告诉他们LINQ / Extension方法可以解决他们的问题只会让他们感到难过.
他们已经了解到List.FindAll()和.FindFirst()比编写foreach循环更清晰.现在我正在推动他们使用ReadOnlyCollections,他们失去了清晰度.
也许有一个更深层次的设计问题,我没有发现.
– 抱歉,原帖应该提到了VS2005的限制.我和我共处了很长时间以至于我没有注意到.
解决方法
DO use
ReadOnlyCollection<T>
,a subclass ofReadOnlyCollection<T>
,or in rare casesIEnumerable<T>
for properties or return values representing read-only collections.
我们使用ReadOnlyCollections来表达我们返回的集合的意图.
列表< T>为方便起见,在.NET 2.0中添加了您所说的方法.在C#3.0 / .NET 3.5中,您可以在ReadOnlyCollection< T>上获得所有这些方法. (或任何IEnumerable< T>)使用扩展方法(并使用LINQ运算符),所以我认为没有任何动机将它们本地添加到其他类型.它们在List上存在的事实只是一个历史记录,因为现在可以使用扩展方法,但不是2.0.
关于大多数 Web 浏览器中是否提供 PUT、DELETE、HEAD 等方法?和大多数web网页使用的格式是什么的问题我们已经讲解完毕,感谢您的阅读,如果还想了解更多关于403 Forbidden Error for .Net Core 3.1 Web Api 仅适用于 Delete & PUT 方法、都可以放什么,什么作用?、ASP.NET 核心 Web API 模板的 PUT、DELETE 不起作用错误 404、c# – 为什么ReadOnlyCollection <>包含FindAll(),FindFirst()等方法,等相关内容,可以在本站寻找。
本文标签: