解决.net core webapi iis发布之后 put、 delete 请求错误405.0

前言

大家好,我是码农刚子。前段时间自己下班后在家里写了个简单的记账本微信小程序,后端是asp.net core webapi 8.0,实现了一些基础的功能:授权登录、交易记录添加修改删除、以及分类统计等。本地调试都是正常的,于是我将api项目部署到windows服务器的iis上面,然后在小程序上面测试,添加记录可以正常保存,但是删除和修改时显示操作失败。很纳闷啊,跨域问题我也已经配置了的,所有肯定不是跨域的问题。那是什么原因呢?

解决.net core webapi iis发布之后 put、 delete 请求错误405.0

原因分析

经过调试发现问题:在请求put 和 delete 时出现错误代码为 405

解决.net core webapi iis发布之后 put、 delete 请求错误405.0

经过百度看到有前辈已经解决了此问题,是由于iis中 WebDavModule 模块的影响导致的。于是我跟着操作之后,也解决了这个问题,所以也在这里记录一下

那为什么webDavModule 会影响 put 、delete 操作呢?

在某些情况下,开启了WebDAV模块可能会导致.NET Core应用程序中的PUT和DELETE请求出现405 Method Not Allowed的问题。

WebDAV模块模块作用:WebDAV模块是一个常见的HTTP功能模块,它默认情况下会处理PUT和DELETE请求。在某些配置下,WebDAV模块会拦截这些请求并返回405错误,因为它默认情况下不允许这些请求通过。

解决办法

打开iis ->功能视图->模块->删除 WebDavModule(这个模块的名称也可能是WebDavModule2) ,选中然后点击右边的删除按钮,删除之后put、delete操作恢复正常了,如下图:

image

 ​以上就是《解决.net core webapi iis发布之后 put、 delete 请求错误405.0》的全部内容,希望你有所收获。关注、点赞,持续分享

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值