更新时间:2025-04-08 13:49:11
最近在开发项目时,遇到了一个让人头疼的问题:当通过JavaScript调用.NET WebAPI接口时,浏览器返回了 405 Method Not Allowed 的错误 😱。这个错误让代码运行直接卡住,真是让人抓狂!
首先,我们得明白问题的核心:405错误通常意味着服务器配置或API设置存在问题,导致请求方法(如GET、POST)被禁止 🚫。检查后发现,问题出在WebAPI的路由配置上,可能是因为缺少 `[HttpXXX]` 特性(比如 `[HttpPost]` 或 `[HttpGet]`),或者CORS跨域策略没有正确配置 ✅。
解决办法很简单:
1️⃣ 确保API方法的特性与前端发送的请求类型一致;
2️⃣ 在 `Startup.cs` 中添加 CORS 支持,例如:
```csharp
services.AddCors(options =>
options.AddPolicy("AllowAll", builder =>
builder.AllowAnyOrigin().AllowAnyMethod().AllowAnyHeader())
);
```
3️⃣ 最后重启服务,刷新页面试试!✨
搞定后,页面终于恢复正常,内心一阵狂喜 🎉!如果你也遇到类似问题,记得排查以上几点哦!💡
Web开发 JavaScript WebAPI 编程小技巧