我想在Asp.net核心web api POST方法中传递很长的字符串作为参数?
我想在Asp.net核心web api POST方法中传递很长的字符串作为参数,但当我传递时,只需要几个字。如何解决这个问题 我传递的数据:我想在Asp.net核心web api POST方法中传递很长的字符串作为参数?,.net,api,post,.net-core,asp.net-apicontroller,.net,Api,Post,.net Core,Asp.net Apicontroller,我想在Asp.net核心web api POST方法中传递很长的字符串作为参数,但当我传递时,只需要几个字。如何解决这个问题 我传递的数据: { "Stack":" RtrnAddr Arg#1 Arg#2 Arg#3 Arg#4 Function or address ----------------- ---------------
{
"Stack":" RtrnAddr Arg#1 Arg#2 Arg#3 Arg#4 Function or address
----------------- ----------------- ----------------- ----------------- ----------------- -------------------------------------------------------------------
00000000`378265ef0 : 00000000`00000001 00000000`38e97628 00000000`1efb5b50 00000000`00000000
00000000`0058000001 : 00000000`38e97628 00000000`1efb5b50 00000000`00000000 000007fe`ed12964e
00000000`38e987628 : 00000000`1efb5b50 00000000`00000000 000007fe`ed12964e ffffffff`fffffffe
00000000`1efb58b50 : 00000000`00000000 000007fe`ed12964e ffffffff`fffffffe 00000000`0028d830
00000000`000000000 : 000007fe`ed12964e ffffffff`fffffffe 00000000`0028d830 00000000`001e0644
"
}
是否将[FromBody]属性添加到api方法中的参数中 ex:[FromBody]字符串值 请参阅下面的链接。这可能有用
您传递的数据没有问题。它正在工作。请试试这个。
创建另一个类似这样的类。
公共类堆栈数据
{
公共字符串堆栈{get;set;}
}
然后将该类与api方法中的参数一起使用,如下所示。
公共异步任务Post([FromBody]堆栈数据堆栈)
是的,我已经添加了,但仍然在《邮递员》中,我收到了状态代码415的错误。您是否尝试过“内容类型”:“应用程序/json”标题在《邮递员》中?是的,内容类型是“应用程序/json”您也尝试过原始格式吗?然后按如下方式传递数据。{“data”:{“test1”:[“1”,“12”],“test2”:4,“test3”:7,“test4”:1}}以原始格式传递,但仍然存在相同的问题,Jason值无法转换为system.string我在控制器中的post方法类似于[HttpPost]公共异步TaskPost([FromBody]字符串堆栈){}
Data you are passing has no issue. It is working. Try this please.
Create another class like this.
public class StackData
{
public string Stack{ get; set; }
}
Then use that class with the parameter in api method as below.
public async Task<IActionResult> Post([FromBody] StackData Stack)