如何将 json 列表作为参数来休息 web api 服务

Posted

技术标签:

【中文标题】如何将 json 列表作为参数来休息 web api 服务【英文标题】:how to take as parameter json list to rest web api service 【发布时间】:2016-06-10 13:21:08 【问题描述】:

我必须将 json 列表作为 web api 的参数。

http://localhost:8082/api/Values/EmptyCardList?number=[

    num: "1"
,

    num: "2"
,

    num: "3"
,

    num: "4"
,

    num: "5"
,

    num: "6"
,

    num: "7"

]

有可能吗?它会导致性能问题吗?还要参数多少取字符或列表?

【问题讨论】:

你的请求是HttpPost吗? 是的。因为我想在我的服务中发送参数json数据集。在我的服务接受这个请求并将所有数据插入我的数据库之后。你可以认为是批量插入。有可能吗?或者你有什么建议吗? @SerdarToprak 参考这个问题***.com/questions/1619302/… 如果您使用带有查询字符串中数据的 Restful URL 【参考方案1】:

如果您正在发出 httpPost 请求并在请求正文中传递 json 对象

设置

contentType:"application/json"

在数据使用JSON.stringify(yourJson);

类似这样的:

    $(function () 
    var youJsondata = num :"2",num:"3";
    $.ajax(
        type: "POST",
        data :JSON.stringify(youJsondata),
        url: "http://localhost:8082/api/Values/emptycardlist",
        contentType: "application/json"
    );
);

您的 api 方法应如下所示:

[HttpPost]
Route("api/Values/emptycardlist")
public HttpResponseMessage EmptyCardList([FromBody] JObject jobject)
   dynamic numList = jobject;

Reference

【讨论】:

以上是关于如何将 json 列表作为参数来休息 web api 服务的主要内容,如果未能解决你的问题,请参考以下文章

如何将数组作为参数发送到iOS中的json服务

如何将 JSON 数组作为 URL 中的参数传递

如何在 Android 中将 JSON 参数作为 Web 服务请求发送? [复制]

如何将json POST数据作为对象传递给Web API方法?

尝试解析由 iOS 项目的 RESTful Web APS 返回的 json 数组

ArduPilot开发指南1.2.1 完整的参数列表 - AP_Periph参数