Message":"请求的资源不支持 http 方法“POST配置解决方法

L736454 2019-06-27 11:37:37
Message":"请求的资源不支持 http 方法“POST配置解决方法

引用了System.Web.Http;也加了[HttpPost]但是都不行,

在本地测试可以但是到服务器上面测试就不行了

大神们,求解

...全文
3063 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
L736454 2019-06-27
  • 打赏
  • 举报
回复
#region POST /// <summary> /// 添加菜单的信息 /// </summary> /// <param name="siteId">站点ID</param> /// <param name="img">图片</param> /// <param name="pageUrl">页面跳转路径</param> /// <param name="menuName">菜单名称</param> /// <param name="showIndex">排序号</param> /// <param name="showState">状态</param> /// <returns></returns> [HttpPost] public HttpResponseMessage menus(string siteId,string img,string pageUrl,string menuName,int showIndex,int showState) { //创建参数验证 bool status = true; string errMsg = string.Empty; if (!ModelState.IsValid) { status = false; } if(siteId.Length<6) { status = false; errMsg = "siteId有误"; } if(showIndex<0 || showIndex>200) { status = false; errMsg = "showIndex不能大于200或小于0"; } if(!(showState==0 || showState==1)) { status = false; errMsg = "showState只能输入0和1"; } //业务逻辑 if(status) { try { menusModel model = new menusModel();//实例化model层 model.siteId = siteId; model.pageUrl = pageUrl; model.menuName = menuName; model.showIndex =showIndex; model.showState = showState; model.img = img; int resultCount= new menusDal().menusAdd(model); if(resultCount==0) { status = false; errMsg = "添加失败"; } } catch (Exception err) { status = false; errMsg = err.ToString(); } } //判断状态 string resultJson = string.Empty; if (status) { success success = new success() { result = "success", }; resultJson = JsonConvert.SerializeObject(success); } else { fail fail = new fail() { result = "fail", errMsg = errMsg }; resultJson = JsonConvert.SerializeObject(fail); } return new HttpResponseMessage { Content = new StringContent(resultJson, System.Text.Encoding.UTF8, "application/json") }; } #endregion <script type="text/javascript"> debugger; var formData = new FormData(); formData.append("siteId", "100000"); formData.append("url", "vssjdkhsvjv"); formData.append("img", "1234"); formData.append("showIndex", 1); formData.append("showState", 0); formData.append("menuName","关于我们") $.ajax({ url: 'https://******/*/menus', type: 'POST', data: formData, contentType: false, processData: false, success: function (data) { //上传成功 console.log(data); }, error: function (data) { //上传异常 console.log(data); } }); </script>
楠小南 2019-06-27
  • 打赏
  • 举报
回复
你后面没有 对 OPTIONS 处理 预检请求需要返回200 并且头部要一致 总之就是麻烦
L736454 2019-06-27
  • 打赏
  • 举报
回复
引用 3 楼 正怒月神 的回复:
把代码发出来看看。 我们先确定是不是webapi或者mvc。 因为.net mvc中创建的webapi, 是不需要额外引用System.Web.Http,他本来就帮你引用好了
是webapi不是mvc. 要看哪部分的代码,控制器的吗?
stherix 2019-06-27
  • 打赏
  • 举报
回复
引用 2 楼 L736454 的回复:
[quote=引用 1 楼 stherix 的回复:] 跨域访问可能会遇到这样的问题 有的还需要先访问OPTIONS来确定是否支持POST https://blog.csdn.net/qq_39393671/article/details/80967924
在Web.config里面配置了跨域的请求了但是还是不可以[/quote] 我以前的api,用ajax就没这问题 但是别人写的vue来访问就必须还要写一个OPTIONS,来返回支持的列表,否则浏览器报错
正怒月神 版主 2019-06-27
  • 打赏
  • 举报
回复
把代码发出来看看。 我们先确定是不是webapi或者mvc。 因为.net mvc中创建的webapi, 是不需要额外引用System.Web.Http,他本来就帮你引用好了
L736454 2019-06-27
  • 打赏
  • 举报
回复
引用 1 楼 stherix 的回复:
跨域访问可能会遇到这样的问题 有的还需要先访问OPTIONS来确定是否支持POST https://blog.csdn.net/qq_39393671/article/details/80967924
在Web.config里面配置了跨域的请求了但是还是不可以
stherix 2019-06-27
  • 打赏
  • 举报
回复
跨域访问可能会遇到这样的问题 有的还需要先访问OPTIONS来确定是否支持POST https://blog.csdn.net/qq_39393671/article/details/80967924
L736454 2019-06-27
  • 打赏
  • 举报
回复
引用 17 楼 正怒月神 的回复:
webapi的方法,不要添加入参
好的,我把参数删了试一下
正怒月神 版主 2019-06-27
  • 打赏
  • 举报
回复
webapi的方法,不要添加入参
L736454 2019-06-27
  • 打赏
  • 举报
回复
引用 15 楼 正怒月神 的回复:
[quote=引用 14 楼 L736454 的回复:] 我没有使用MVC框架,只有webapi控制器,写接口,访问不了是不是配置问题啊 代码没有问题,就是出不来
我也就是一个html核webapi啊。。。 [/quote] 我的也是,但是出不来
正怒月神 版主 2019-06-27
  • 打赏
  • 举报
回复
引用 14 楼 L736454 的回复:
我没有使用MVC框架,只有webapi控制器,写接口,访问不了是不是配置问题啊 代码没有问题,就是出不来
我也就是一个html核webapi啊。。。
L736454 2019-06-27
  • 打赏
  • 举报
回复
引用 13 楼 正怒月神 的回复:
[quote=引用 12 楼 L736454 的回复:] [quote=引用 10 楼 正怒月神 的回复:] [quote=引用 9 楼 L736454 的回复:] [quote=引用 8 楼 正怒月神 的回复:] 如果你是webapi上传图片, 那么看一下这个 https://blog.csdn.net/hanjun0612/article/details/53518581
不是上传图片,是添加数据,在服务器测试的时候出错了 {"Message":"请求的资源不支持 http 方法“POST”。"}"[/quote] 如果只是提交数,那么去掉 contentType: false, processData: false,[/quote] 去掉contentType: false, processData: false,就报这个错误 [/quote] 说着说着,忘记你是 formdata提交了。 我写了个例子。 [/quote] 我没有使用MVC框架,只有webapi控制器,写接口,访问不了是不是配置问题啊 代码没有问题,就是出不来
正怒月神 版主 2019-06-27
  • 打赏
  • 举报
回复
引用 12 楼 L736454 的回复:
[quote=引用 10 楼 正怒月神 的回复:] [quote=引用 9 楼 L736454 的回复:] [quote=引用 8 楼 正怒月神 的回复:] 如果你是webapi上传图片, 那么看一下这个 https://blog.csdn.net/hanjun0612/article/details/53518581
不是上传图片,是添加数据,在服务器测试的时候出错了 {"Message":"请求的资源不支持 http 方法“POST”。"}"[/quote] 如果只是提交数,那么去掉 contentType: false, processData: false,[/quote] 去掉contentType: false, processData: false,就报这个错误 [/quote] 说着说着,忘记你是 formdata提交了。 我写了个例子。
L736454 2019-06-27
  • 打赏
  • 举报
回复
引用 10 楼 正怒月神 的回复:
[quote=引用 9 楼 L736454 的回复:] [quote=引用 8 楼 正怒月神 的回复:] 如果你是webapi上传图片, 那么看一下这个 https://blog.csdn.net/hanjun0612/article/details/53518581
不是上传图片,是添加数据,在服务器测试的时候出错了 {"Message":"请求的资源不支持 http 方法“POST”。"}"[/quote] 如果只是提交数,那么去掉 contentType: false, processData: false,[/quote] 去掉contentType: false, processData: false,就报这个错误
L736454 2019-06-27
  • 打赏
  • 举报
回复
引用 9 楼 L736454 的回复:
[quote=引用 8 楼 正怒月神 的回复:] 如果你是webapi上传图片, 那么看一下这个 https://blog.csdn.net/hanjun0612/article/details/53518581
不是上传图片,是添加数据,在服务器测试的时候出错了 {"Message":"请求的资源不支持 http 方法“POST”。"}"[/quote] 去掉contentType: false, processData: false,就报这个错误了
正怒月神 版主 2019-06-27
  • 打赏
  • 举报
回复
引用 9 楼 L736454 的回复:
[quote=引用 8 楼 正怒月神 的回复:] 如果你是webapi上传图片, 那么看一下这个 https://blog.csdn.net/hanjun0612/article/details/53518581
不是上传图片,是添加数据,在服务器测试的时候出错了 {"Message":"请求的资源不支持 http 方法“POST”。"}"[/quote] 如果只是提交数,那么去掉 contentType: false, processData: false,
L736454 2019-06-27
  • 打赏
  • 举报
回复
引用 8 楼 正怒月神 的回复:
如果你是webapi上传图片, 那么看一下这个 https://blog.csdn.net/hanjun0612/article/details/53518581
不是上传图片,是添加数据,在服务器测试的时候出错了 {"Message":"请求的资源不支持 http 方法“POST”。"}"
正怒月神 版主 2019-06-27
  • 打赏
  • 举报
回复
如果你是webapi上传图片, 那么看一下这个 https://blog.csdn.net/hanjun0612/article/details/53518581

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧