可以过滤来自不同服务器的API请求吗?比方说,这个端点(https://www.myendpoint/returns.php?callback=)返回这样的对象列表:JSON API回调
[
{
"name": "Joshua",
"sex": "M",
"address": {
"postCode": "x",
"city": "y"
}
},
{
"name": "Marie",
"sex": "F",
"address": {
"postCode": "x",
"city": "y"
}
},
{
"name": "Frank",
"sex": "M",
"address": {
"postCode": "x",
"city": "y"
}
}
]
当然这只是和示例,因为API可以返回records.The回调参数的数以百万计发起JSONP通信“?回调= ...“无效或缺少回调将调用400错误请求。
比方说,我想这是只有男性的记录(M)
我在做这样的事情使用jQuery:做请求时
$.ajax({
type: 'GET',
url: "https://url-to-api?callback=?",
async: false,
jsonpCallback: 'jsonCallback',
contentType: "application/json",
data:{'sex':'M'},
dataType: 'jsonp',
success: function(json) {
console.dir(json);
},
error: function(e) {
console.log(e.message);
}
}
有任何的方式来过滤结果?因为现在,解决方案是获取所有结果并查找对象中的男性属性。
你必须在服务器端进行过滤。 –
发送到客户端之前进行过滤是您的服务器必须为您做的事情。 – jfriend00
问题是我没有在服务器端的任何控制。我唯一知道的就是这个API的URL。因为我有这个URL,所以我知道JSON文件的结构。现在我在做完请求后返回所有对象,并循环所有对象以检查哪个是男性(M) – Nocktu