从WEB API的GET方法读取值
本文关键字:方法 读取 GET WEB API | 更新日期: 2023-09-27 18:01:20
我试图在WebAPI中获得项目列表
ajax方法如下所示
$.ajax({
type: 'GET',
url: 'api/values',
data: JSON.stringify({ pageNo: pageNo + 1, pageSize: pageSize }),
contentType: 'application/json'
});
在值控制器中,我无法获得值。
我的控制器是这样的。
public IEnumerable<string> Get([FromURI] pagingInfo)
{
return new string[] { "value1", "value2" };
}
正确的标准是什么?以上标准正确吗或者应该把页面号和页面大小放在url中,然后创建另一个路由。
一般来说,不建议(甚至禁止)通过GET发送正文,只有查询字符串是有效的:
删除方法JSON.stringify
,你的ajax调用应该是:
$.ajax({
type: "GET",
url: "/api/values",
data: { pageNo: 1, pageSize: 2 },
success: function (data) {
}
});
它将自动转换为查询字符串,如果使用JSON.stringify
,您将在查询字符串中得到JSON符号并使其错误。如果你看看Fiddler,使用JSON.stringify
, URL是这样的:
/api/values?{%22PageNo%22:1,%22PageSize%22:2}
你的动作仍然是:
public IEnumerable<string> Get([FromURI]PagingInfo pagingInfo)
{
return new string[] { "value1", "value2" };
}