首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

ASP.NET MVC Web Api仅在1个Http方法中可用,但如果它有其他方法,则不会抛出Http Statuscode406

ASP.NET MVC Web API是一种用于构建基于HTTP协议的Web服务的框架。它允许开发人员使用ASP.NET MVC的模型-视图-控制器架构来构建RESTful风格的API。

对于给定的HTTP方法,ASP.NET MVC Web API可以根据请求的内容协商机制自动选择适当的响应格式(如JSON或XML)。默认情况下,ASP.NET MVC Web API支持GET、POST、PUT和DELETE这四个HTTP方法。

然而,如果ASP.NET MVC Web API中的控制器具有其他方法(如PATCH、OPTIONS等),并且没有为这些方法提供适当的处理逻辑,那么当请求这些方法时,API将返回HTTP Status Code 406(Not Acceptable)。

ASP.NET MVC Web API的优势包括:

  1. 灵活性:ASP.NET MVC Web API提供了强大的路由和控制器机制,使开发人员能够轻松定义API的行为和路由规则。
  2. 可扩展性:通过使用ASP.NET的扩展机制,可以轻松地添加自定义功能和中间件来满足特定需求。
  3. 内容协商:ASP.NET MVC Web API支持内容协商机制,可以根据客户端的需求自动选择合适的响应格式。
  4. 安全性:ASP.NET MVC Web API提供了多种身份验证和授权机制,可以确保API的安全性。

推荐的腾讯云相关产品:

腾讯云提供了多个与云计算和Web服务相关的产品,以下是一些推荐的产品:

  1. 云服务器(CVM):提供可扩展的虚拟服务器实例,用于托管ASP.NET MVC Web API应用程序。链接:https://cloud.tencent.com/product/cvm
  2. 云数据库MySQL版:提供高性能、可扩展的MySQL数据库服务,用于存储API应用程序的数据。链接:https://cloud.tencent.com/product/cdb_mysql
  3. 云安全中心:提供全面的网络安全解决方案,包括DDoS防护、Web应用防火墙等,用于保护API应用程序的安全。链接:https://cloud.tencent.com/product/ddos
  4. 云监控:提供实时监控和报警功能,用于监测API应用程序的性能和可用性。链接:https://cloud.tencent.com/product/monitor

请注意,以上推荐的产品仅作为示例,您可以根据实际需求选择适合的腾讯云产品。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Asp.net MVC 之 Contorllers(二)

ASP.NET 4 Web Forms 最新版本,可以使用 URL 路由将传入的 URLs 匹配其他 URLs 而不会产生 HTTP 302 重定向的消耗。...注 最初开发 URL 路由模块的目的是作为一个 ASP.NET MVC 组件,现在已经是 ASP.NET 平台的一部分,只是 ASP.NET MVCASP.NET Web Forms 提供的 API...在 ASP.NET 缓存先检查,如果对于请求没有可用的响应,之后就会触发该事件。...出于这个原因,AttributeRouting项目已启动,现已集成在ASP.NET MVC 5 ,甚至在 Web API 也有集成,将在后面章节讨论。...路由参数(orderId 标记) 必须与定义在方法签名中一个参数相匹配。有更多的属相可用(对于每个 HTTP 谓词),这已经是路由属性要点。

1.9K60

实战 ASP.NET Web API

Web API 的开发类似于 ASP.NET MVC 控制器的开发,但是相对于直接使用 ASP.NET MVC 来返回 Json 对象的方式而言,Web API 封装了数据的序列化、反序列化,接口、实现都更加简单...在不做任何配置的情况下,如果 Http 请求,HttpHeader Accept 被指定为 accept: application/xml, Web API 会自动把数据使用 xml 进行序列化...跟 ASP.NET MVC 的 Json 序列化不同的是,Web API 使用了 Newtonsoft.Json 框架来进行序列化。...Action 匹配 Web API 框架默认是基于 Restful 架构模式的,与 ASP.NET MVC 有区别的是,它会根据 Http 请求的 HttpMethod(Get、Post、Put、Delete...delete /API/models/1 删除指定实体 由于忽视了方法名,所以的几个方法,在调用时会抛出异常: ?

1.4K50

从壹开始前后端分离【 .NET Core2.0 +Vue2.0 】框架之二 || 后端项目搭建

虽然它有一些缺陷,目前 github 也在主推 GraphQL 这种新的接口风格,目前国内来说还是 RESTful 接口风格比较普遍。...Configure方法asp.net core程序用来具体指定如何处理每个http请求的, 例如我们可以让这个程序知道我使用mvc来处理http请求, 那就调用app.UseMvc()这个方法就行.....net core 调试的两种方法 1、通过IIS调试 2、项目自带的Kestrel web应用调式 三、注册并使用MVC 因为asp.net core 2.0使用了一个大而全的metapackage...api里面没有, 那么web api就会使用默认的格式. asp.net core 默认提供的是json格式, 也可以配置xml等格式....但是如果body数据的属性有问题, 比如说name没有填写, 或者name太长, 那么在执行action方法的时候就会报错, 这时候框架会自动抛出500异常, 表示是服务器的错误, 这是不对的.

90920

ASP.NET MVC随想录——锋利的KATANA

这在当时无疑是成功的,ASP.NET的发布迅速拉拢了开发者,在Web开发形成了一股新的势力,同时也买下来一些隐患: 所有的功能、特性都发布在一个整体框架上并且紧耦合核心的Web抽象库——System.Web...System.Web是.NET Framework的重要组成部分,这意味着要修复更新System.Web必须更新.NET Framework,.NET Framework是操作系统的基础,为了稳定性往往不会频繁更新...唯一不足的是,ASP.NET MVC还是基于ASP.NET Framework(注:ASP.NET MVC 6已经不依赖System.Web),所以Web Application和Web Server...ASP.NET Web API 随着时间的推移,一些问题开始暴露出来了,由于Web Server和Web Application紧耦合在一起,微软在开发独立、简单的Framework上越发捉襟见肘,这和其他平台下开源社区蓬勃发展形成鲜明对比...如果请求的路径为Error时,抛出异常,显示错误页,如下所示: ?

1.6K80

异步陷阱之IO篇

这里我抛出一个实际项目中遇到的陷阱,先简单交代一下故事背景:SpreadJS产品有一个Excel IO部件,是一个ASP.NET MVC Web APIMVC4)应用,用来导入Excel文件到SpreadJS...看来前面的分析是对的,文件在特定 情况不可用,但是为什么不可用呢?从上面的IO异常信息可以看出,这个文件是ASP.NET临时保存的上传文件。...在ASP.NET WEB API,处理上传文件的思路和方法如下: var root = HttpContext.Current.Server.MapPath("~/App_Data"); var provider...以上分析了问题,如何解决呢(某PM话外音:那谁谁,快点啊,客户催着呢),很简单,去除调这个异步IO就可以了,好吧,代码一点也不简单,重写这个GetStream方法,保证获取的FileStream使用同步...参考示例工程代码:下载地址 更新补充:在ASP.NET MVC 5重写了ReadAsMultipartAsync所在的整个类,已经修复了这个问题(至少我试过同时1000次毫无压力),参考示例AsyncIoTrap_v5

1.1K70

【Java面试总结】常用框架之Spring

bean 实例; request:每一次 HTTP 都会产生一个新的 bean,该 bean 仅在当前 HTTP request 内有效; session:每一次 HTTP 请求都会产生一个新的 bean...,该 bean 仅在 当前 HTTP session 内有效; global-session:全局session作用域,仅仅在protlet的web 应用才有意义。...容器找到配置文件 Spring Bean 的定义; Bean 容器利用 Java Reflection API 创建一个 Bean 的实例; 如果涉及到一些属性值,利用 set()方法设置一些属性值...与上面的类似,如果实现了其他 *.Aware 接口,就调用相应的方法。...TransactionDefinition.PROPAGATION_MANDATORY:如果当前存在事务,加入该事务;如果当前没有事务,抛出异常。

44230

Asp.net mvc 知多少(四)

本系列主要翻译自《ASP.NET MVC Interview Questions and Answers 》- By Shailendra Chauhan,想看英文原版的可访问http://www.dotnettricks.com...该书主要分为两部分,ASP.NET MVC 5、ASP.NET WEB API2。本书最大的特点是以面试问答的形式进行展开。通读此书,会帮助你对ASP.NET MVC有更深层次的理解。...layout页面中用来渲染加应用程序其他页面。...如果有任何视图需要修改通用的设置可以通过在view重载通用设置指定一个新值即可。 Q47. ASP.NET MVC中有哪几种方式去修改默认的layout?...WebApiConfig.cs - 用来注册不同的WEB API 路由,也可用来设置额外的WEB API 配置选项。 Q49. ASP.NET MVC返回/呈现一个View都有哪几种方式?

2.2K90

ASP.NET Core 中间件(Middleware)详解

请求流程的每个中间件组件都负责调用流水线的下一个组件,如果适当,负责链接短路。...将HTTP模块迁移到中间件解释了ASP.NET Core和以前版本(ASP.NET的请求管道之间的区别,并提供了更多的中间件示例。...虽然身份认证请求,授权(和拒绝)仅在MVC选择特定的剃刀页面或控制器和操作之后才会发生。 授权(和拒绝)仅在MVC选择特定的Razor页面或Controller和Action之后才会发生。...如果您需要在请求与中间件共享服务,请参阅以下请求相关性。 中间件组件可以通过构造方法参数来解析依赖注入的依赖关系。 UseMiddleware也可以直接接受其他参数。...如果您必须在中间件和其他类型之间共享作用域服务,请将这些服务添加到Invoke方法的签名。 Invoke方法可以接受由依赖注入填充的其他参数。

1.4K20

创建API服务最小只要4行代码!!!尝新体验ASP.NET Core 6预览版本的最小Web API(minimal APIS)新特性

尝新体验ASP.NET Core 6预览版本的最小Web API(minimal APIS)新特性》 概述 .NET开发者们大家好,我是Rector。...本文我们主要来体验最小Web API的功能和特性。最小Web API的目的主要是帮助C#(或者F#)后端开发者快速创建微服务项目或者HTTP API服务。.../MVC/SPA ASP.NET Core with React.js react [C#] Web/MVC/SPA ASP.NET...在Visual Studio 2022,按F5运行,如果在浏览打开并显示如下页面,说明最小API项目运行正常,如图: 在最小API项目中,直接调用WebApplication.MapGet()方法即可完成路由的注册和映射...码友网将在后续的文章为大家分享的关于最小Web API其他功能和特性,敬请关注。

5K30

ASP.NET Core 中断请求了解一下(翻译)

如果托管在IIS和IIS Express上时,ASP.NET Core Module(ANCM)并不会告诉ASP.NET Core在客户端断开连接时中止请求。...从而可以说明MVC的默认行为: 即使用户刷新了浏览器会取消原始请求,MVC对其一无所知,已经被取消的请求还是会在服务端继续运行,而最终的运行结果将会被丢弃。 这样就会造成严重的性能浪费。...再回到前面的实例,我们有一个长期运行的操作方法(例如,通过调用许多其他API生成只读报告)。由于它是一种昂贵的方法,我们希望在用户取消请求时尽快停止执行操作。...在每个循环开始时,我们检查CancellationToken,如果取消抛出异常。这使得我们可以终止一个长时间运行的同步任务。...使用ExceptionFilter捕捉取消异常 ExceptionFilters是一个MVC概念,可用于处理在您的操作方法或操作过滤器中发生的异常。可以参考官方文档。

1.2K30

MVC 到使用 ASP.NET Core 6.0 的Minimal API

年,随着 ASP.NET MVC 引入了其他语言中变得司空见惯的模型-视图-控制器模式[1],并为其提供原生支持,.NET Web 应用程序开发有了极速的发展。...2012 年,也许是由于 ReSTful API 的日益流行,借鉴了 ASP.NET MVC 的许多概念又引入了 ASP.NET Web API,这是对 WCF 的重大改进,使开发人员能够以更少的仪式构建...后来,在 ASP.NET Core ,用于构建网站和 API 的单一框架,这些框架被统一到了 ASP.NET Core MVC 。...随着更多 HTTP 功能作为 ASP.NET Core 中间件(例如身份验证、授权、路由等)出现,无需 MVC 即可构建轻量级 HTTP 应用程序变得更加容易,通常需要一些功能,否则您必须自己构建,例如作为模型绑定和...作为 ASP.NET Core 开发人员,您现在在如何构建 API 方面有多种选择,这只能是一件好事。如果您希望本文涵盖任何其他功能,请在Twitter 上联系[21]。

7.5K10
领券