为什么我无法在控制器中获得 post 请求?
Why I can't get a post request in the controller?
我想在控制器中获取 post 的主体。
这是我的代码:
[HttpPost]
public string GetMsg([FromBody]GetMsgModel GSM)
{
return "";
}
和posted class
public class GetMsgModel {
public string ToUserName { get; set; }
public string FromUserName { get; set; }
public string CreateTime { get; set; }
public string MsgType { get; set; }
public string Content { get; set; }
public string MsgId { get; set; }
}
我在 GetMsg
中添加了一个断点,并通过 postman 发送了一个带有此 XML 正文的 post:
<xml>
<ToUserName>123</ToUserName>
<FromUserName>456</FromUserName>
<CreateTime>1348831860</CreateTime>
<MsgType>789</MsgType>
<Content>000</Content>
<MsgId>1234567890123456</MsgId>
</xml>
嗯,断点根本就没有运行。
这有什么问题吗?同一个控制器中还有另一个 HttpGet
方法,它运行良好。看来还不是控制器的问题
如果您使用的是 Net Core
添加到 Statup.cs
services.AddXmlSerializerFormatters();
而 XML 应该是
<GetMsgModel>
<ToUserName>123</ToUserName>
<FromUserName>456</FromUserName>
<CreateTime>1348831860</CreateTime>
<MsgType>789</MsgType>
<Content>000</Content>
<MsgId>1234567890123456</MsgId>
</GetMsgModel>
希望对您有所帮助
我想在控制器中获取 post 的主体。
这是我的代码:
[HttpPost]
public string GetMsg([FromBody]GetMsgModel GSM)
{
return "";
}
和posted class
public class GetMsgModel {
public string ToUserName { get; set; }
public string FromUserName { get; set; }
public string CreateTime { get; set; }
public string MsgType { get; set; }
public string Content { get; set; }
public string MsgId { get; set; }
}
我在 GetMsg
中添加了一个断点,并通过 postman 发送了一个带有此 XML 正文的 post:
<xml>
<ToUserName>123</ToUserName>
<FromUserName>456</FromUserName>
<CreateTime>1348831860</CreateTime>
<MsgType>789</MsgType>
<Content>000</Content>
<MsgId>1234567890123456</MsgId>
</xml>
嗯,断点根本就没有运行。
这有什么问题吗?同一个控制器中还有另一个 HttpGet
方法,它运行良好。看来还不是控制器的问题
如果您使用的是 Net Core 添加到 Statup.cs
services.AddXmlSerializerFormatters();
而 XML 应该是
<GetMsgModel>
<ToUserName>123</ToUserName>
<FromUserName>456</FromUserName>
<CreateTime>1348831860</CreateTime>
<MsgType>789</MsgType>
<Content>000</Content>
<MsgId>1234567890123456</MsgId>
</GetMsgModel>
希望对您有所帮助