C# 邮递员测试发送字符串到Web Api接受字符串为空
我一直在用Postman测试所有Get、Create和Update方法,其中Get什么也不传递。Create和Update传递原始json,其中包含与C类匹配的多个属性的Activity对象 因此,这个用于创建和更新的签名可以很好地工作C# 邮递员测试发送字符串到Web Api接受字符串为空,c#,json,asp.net-web-api,postman,C#,Json,Asp.net Web Api,Postman,我一直在用Postman测试所有Get、Create和Update方法,其中Get什么也不传递。Create和Update传递原始json,其中包含与C类匹配的多个属性的Activity对象 因此,这个用于创建和更新的签名可以很好地工作 [HttpPost] public IHttpActionResult UpdateActivity(Activity activity) 上面的工作与邮递员传递JSON内容类型和所有属性。我在其他项目上也这样做过 然而 我试图简单地传入一个字符串,不管发生什
[HttpPost]
public IHttpActionResult UpdateActivity(Activity activity)
上面的工作与邮递员传递JSON内容类型和所有属性。我在其他项目上也这样做过
然而
我试图简单地传入一个字符串,不管发生什么,它都是空的
public IHttpActionResult DeleteActivity([FromBody]string Id)
{
// delete
var del = ActivityService.DeleteActivity(Id);
return Ok(del);
}
邮递员我试过很多方法
http://localhost:49810/api/activityapi/deleteactivity
我已经尝试了很多基于博客和谷歌搜索的方法,例如
{ "Id" = "5808786fa3e9ec79546b3c71" }
您的有效负载无效 更改->
{ "Id" = "5808786fa3e9ec79546b3c71" }
至->
您的有效负载无效 更改->
{ "Id" = "5808786fa3e9ec79546b3c71" }
至->
在正文中尝试以下内容,内容类型为application/json
{ "5808786fa3e9ec79546b3c71" }
当您这样指定它时,它将尝试反序列化为具有Id属性的复杂类型
{ "Id" : "5808786fa3e9ec79546b3c71" }
在正文中尝试以下内容,内容类型为application/json
{ "5808786fa3e9ec79546b3c71" }
当您这样指定它时,它将尝试反序列化为具有Id属性的复杂类型
{ "Id" : "5808786fa3e9ec79546b3c71" }
我知道这是一个较老的问题,但我想帮助那些可能有类似问题的人,因为我能够让它工作 在WebAPI控制器中,我的方法设置为
[HttpPost]
public IHttpActionResult Create([FromBody] int eventId)
{
....
}
为了在Postman中正确地测试它,您必须:在body中,设置为raw,确保设置了JSON application/JSON,然后添加值,如2,就是这样。。与{eventId:2}不同,后者是正确的JSON,只需输入值即可工作
所以在原始海报的例子中,在邮递员中,如果您将Body设置为raw,JSON application/JSON,那么5808786fa3e9ec79546b3c71作为它的值将起作用。我知道这是一个较老的问题,但我想帮助那些可能有类似问题的人,因为我能够让它起作用 在WebAPI控制器中,我的方法设置为
[HttpPost]
public IHttpActionResult Create([FromBody] int eventId)
{
....
}
为了在Postman中正确地测试它,您必须:在body中,设置为raw,确保设置了JSON application/JSON,然后添加值,如2,就是这样。。与{eventId:2}不同,后者是正确的JSON,只需输入值即可工作
因此,在原始海报的例子中,在Postman中,如果您将Body设置为raw,JSON application/JSON,那么5808786fa3e9ec79546b3c71作为它的值将起作用。在Postman中,确保Body设置为raw并选择JSON,然后在Body中用引号写下您的字符串。不要使用{}来包围它,因为这将使Postman中的复杂对象确保正文设置为raw并选择json,然后在正文中用引号写下字符串。不要使用{}来包围它,因为这是为了生成一个复杂的对象在所示的场景中,我将使用删除动词并从路由中获取id,或者您是否有特定的需要在正文中传递它?在所示的场景中,我将使用删除动词并从路由中获取id,或者你有特殊的需要在正文中传递它吗?当我读到关于添加=而不带valuename Id等的博客时,我无意中发布了这个消息。。但尝试过之后,仍然为空。当我读到关于添加=而不带valuename Id等的博客时,我无意中发布了这个消息。。但尝试过之后,仍然是空的。进入网络apiI也面临着同样的问题。刚刚把5808786fa3e9ec79546b3c71放入体内,它对我起了作用。我也在为同样的问题而挣扎。只要把5808786fa3e9ec79546b3c71放入体内,它就对我起作用了。