webapi 405 method not allowed

问题的原因:创建webapi controller时,习惯创建了mvc的controller,而非api controller。导致引用包有问题。


这两天搞webapi开发的时候,遇见了405错误。

我贴一下解决的方式:


controller中添加如下引用。

using System.Net;
using System.Net.Http;
using System.Web.Http;

删除

using System.Web.Mvc;

Action头部添加相应的请求方式

[HttpPost]
[HttpGet]
........



### 解决 HTTP API 405 Method Not Allowed 错误 当遇到 `405 Method Not Allowed` 错误时,意味着服务器理解请求的方法,但对于目标资源来说此方法已被禁用。要解决这个问题,可以从以下几个方面入手: #### 检查并确认使用的HTTP方法 确保应用程序发送给API端点的HTTP方法(如GET、POST、PUT等)是该端点支持的方法之一。如果尝试使用未被允许的方法访问特定URL,则会触发此类错误[^1]。 #### 审视服务器端实现 对于开发人员而言,在编写Web服务接口逻辑时应明确哪些路径接受何种类型的请求方式,并相应设置好路由规则。例如,若只定义了针对某个地址的GET操作而没有配置其他动词对应的处理器函数,则对该位置发起除GET之外任何动作都会得到405响应码[^2]。 #### 修改客户端代码或调整API调用策略 依据上述两点分析结果采取行动——要么更改前端发出指令的方式使之匹配后端期望;要么修改后台程序增加必要的处理流程以适应更多种类的操作需求。 另外值得注意的是,虽然POST请求本身并不提供加密功能,但在实际应用环境中可以通过HTTPS协议保障传输过程中的信息安全[^3]。 ```python import requests url = 'http://example.com/api/resource' headers = {'Content-Type': 'application/json'} data = {"key": "value"} response = requests.post(url, headers=headers, json=data) if response.status_code == 405: print('Method not allowed') else: print(response.json()) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值