gpt4 book ai didi

asp.net - 如何使用asp.net webapi获取Json Post值

转载 作者:行者123 更新时间:2023-12-03 21:21:20 25 4
gpt4 key购买 nike

我正在请求执行一个 asp.net webapi Post 方法,但我无法获得请求变量。

请求

jQuery.ajax({ url: sURL, type: 'POST', data: {var1:"mytext"}, async: false, dataType: 'json', contentType: 'application/x-www-form-urlencoded; charset=UTF-8' })
.done(function (data) {
...
});

WEB API Fnx
    [AcceptVerbs("POST")]
[ActionName("myActionName")]
public void DoSomeStuff([FromBody]dynamic value)
{
//first way
var x = value.var1;

//Second way
var y = Request("var1");

}

我无法以两种方式获取 var1 内容...(除非我为此创建了一个类)

我该怎么做?

最佳答案

第一种方式:

    public void Post([FromBody]dynamic value)
{
var x = value.var1.Value; // JToken
}

请注意 value.Property实际上返回一个 JToken例如,要获得它的值(value),您需要调用 value.Property.Value .

第二种方式:
    public async Task Post()
{
dynamic obj = await Request.Content.ReadAsAsync<JObject>();
var y = obj.var1;
}

上述两项工作都使用 Fiddler。如果第一个选项不适合您,请尝试将内容类型设置为 application/json确保 JsonMediaTypeFormatter用于反序列化内容。

关于asp.net - 如何使用asp.net webapi获取Json Post值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13120971/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com