这是我第一次尝试使用DataTables,但我不明白我做错了什么。
这是数据表:
var table = $('#kt_table_1');
table.DataTable({
responsive: true,
searchDelay: 500,
processing: true,
serverSide: true,
ajax: {
"url": "http://localhost:8081/services/test",
"type": "POST"
},
order: [[2, "desc"], [0, "desc"], [6, "asc"]],
columns: [
{data: "externalId"},
{data: "shippingName"},
{data: "date"},
{data: "trackingNumber"},
{data: "shippingCost"},
{data: "shippingDetails"},
{data: "status"}
]
});
这是html:
<table id="kt_table_1"></table>
这是我从Spring App返回的内容:
@RequestMapping(value = "/test", method = RequestMethod.POST)
public ResponseEntity<String> getOrders(){
String jsonResponse =
"{" +
"\"draw\": 1, " +
"\"recordsTotal\": 1, " +
"\"recordsFiltered\": 1, " +
"\"data\": [ " +
"[" +
"{" +
"\"externalId\": \"11111\", " +
"\"shippingName\": \"Foo\", " +
"\"date\": \"2019-10-22\", " +
"\"trackingNumber\": \"TR123123\", " +
"\"shippingCost\": \"2.35\", " +
"\"shippingDetails\": \"Country-Name\", " +
"\"status\": \"1\"" +
"}" +
"]" +
"]" +
"}";
return ResponseEntity.ok().contentType(MediaType.APPLICATION_JSON_UTF8).body(jsonResponse);
}
但是当我在表格的页面上输入时,我会收到一条警告消息:
DataTables warning: table id=kt_table_1 - Requested unknown parameter 'externalId' for row 0, column 0.
For more information about this error, please see http://datatables.net/tn/4`
如果我使用Postman对http://localhost:8081/services/test
进行POST,则会在页面上看到json。
为什么我得到unknown parameter
?
答案 0 :(得分:1)
为什么使用POST方法获取信息?我认为您应该只使用简单的GET。
对于数据表,您需要对象列表。在您的控制器中,您具有对象列表的列表。