在我的web api控制器中,我有一个带有以下代码的函数

       [HttpPost]
        public HttpResponseMessage Post(string schooltypeName)
        {
            _schoolTypeService.RegisterSchoolType(schooltypeName);

            var message = Request.CreateResponse(HttpStatusCode.Created);

            return message;
        }

当我和fiddler通话时,我发现了这个错误

{"Message":"The requested resource does not support http method 'POST'."}

我的摆弄参数是

Header

User-Agent: Fiddler

Host: myhost:8823

Content-Type: application/json; charset=utf-8

Content-Length: 26

Request body

{"schooltypeName":"Aided"}

请求的url是

http://myhost:8823/SchoolType

(我配置了url,GET正在使用此url)

这里怎么了?

推荐答案

将您的操作更改为Post([FromBody]string schooltypeName),因为默认情况下字符串类型应该是Uri.

Updated:
将您的主体更改为仅"Aided",因为当前您需要一个类才能使反序列化工作(ex:class School { public string SchoolTypeName { get; set; } }

Asp.net相关问答推荐

如何正确配置 IHttpModule?

ASP .Net Web API 将图像下载为二进制

在 Sessions 中存储自定义对象

IIS 中 ASP.net 应用程序的单独应用程序池

在 appSettings 中存储字符串数组?

System.Web.Helpers.Crypto - 盐在哪里?

在视图 Mvc.net 中访问路由值

如何在页面的基类中执行 Page_Load()?

如何在 ASP.NET 中仅在调试模式下执行代码

ASP.Net 自定义客户端验证

如何找出我的 Windows 域上托管 LDAP 的服务器?

ASP .NET Button 事件处理程序不会在第一次单击时触发,而是在 PostBack 后的第二次单击时触发

对 ASP.NET 2.0 网页进行单元测试的最佳方法是什么?

如何在 ASP.Net Gridview 中添加确认删除选项?

Fiddler 没有从 ASP.NET 网站嗅探 SOAP 流量

具有自定义报告创建能力的最佳 ASP.NET 报告引擎

使用 ASP.NET 进行重定向后获取

为什么在 MVC4 Razor 布局文件中无法识别 @Scripts 和 @Styles 命令?

如何解决我的 ASP.Net MVC 应用程序中的 iisreset 后发生的 AntiForgeryToken 异常?

Sys.WebForms.PageRequestManagerServerErrorException:处理服务器上的请求时发生未知错误.