如何从 API 响应中提取部分 JSON
How to extract partial JSON from API response?
浏览器
打开时加载
这是我之前与这个主题相关的问题。
我的问题是我使用的服务器 api 在列表中添加了一个新项目,正如我在上一个问题中所述,我对 API 或 jQuery 不是很熟练,因此我想知道你能推荐我阅读什么关于这个以及实用的解决方案。我需要使js使用的字段仅是{"name":"Arthas","slug":"arthas","build":"12340","status":1},而不是其余的。
提前非常感谢。
这是 API -> http://api.neverendless-wow.com/server-status
{"servers":[{"name":"Arthas","slug":"arthas","build":"12340","status":1},{"name":"Deathwing","slug":"deathwing","build":"13623","status":1}],"alerts":[]}
这是我目前的js
function checkStatus()
{
jQuery.getJSON("http://api.neverendless-wow.com/server-status",function(data){
if (data.status == '1') {jQuery('#ServStat').addClass('online').removeClass('offline').attr('label','Online');}
else {jQuery('#ServStat').addClass('offline').removeClass('online').attr('label','Offline');}});
}
checkStatus();
{
setInterval(changeState, 300000)
}
你需要使用数据作为数组(data[0]),因此你的代码如下:
function checkStatus()
{
jQuery.getJSON("http://api.neverendless-wow.com/server-status",function(data){
if (data.servers[0].status == '1') {
jQuery('#ServStat').addClass('online').removeClass('offline').attr('label','Online');
}
else {
jQuery('#ServStat').addClass('offline').removeClass('online').attr('label','Offline');
}
});
}
checkStatus();
{
setInterval(changeState, 300000)
}
我可能会选择这样的东西:
// check server status
function checkStatus()
{
$.getJSON(server_url, function(data) {
// reset
var mode = "Offline";
$('.status').removeClass('online').addClass('offline');
// is available?
if (data !== null && data.servers !== null && data.servers[0].status === 1) {
mode = "Online";
$('.status').removeClass('offline').addClass('online');
}
// Extract data from received JSON string is exists
extractData(data);
// set needed attributes
$('.status')
.attr('label', mode)
.text('Servers are ' + mode);
});
}
在 JsBin 上提供现场演示
相关文章:
- 在不使用lodash-get的情况下从json中提取深层属性
- 如何从两个不同的来源提取JSON数据
- 使用JavaScript在Json中提取时,将数组的元素转换为String
- 提取API对Javascript中JSON对象响应的特定部分
- 在Jquery中从JSON中提取数组值
- 正在从JSON.stringify中提取数据
- 如何将json文件中的数据提取到对象数组中,并在两个控制器之间共享
- 单击按钮即可显示带有提取的json数据的表
- 使用 gulp 将打字稿导出提取到 json 文件
- 如何从生成的JSON数组中提取JSON对象
- 从Node.js中的JSON数据中提取JSON字段
- 使用ng repeat从两个不同的JSON文件中提取数据
- 使用Angularjs提取2个不同的JSON文件
- 使用javascript从JSON中提取数据
- 如何使用循环提取数组中的json数据
- AngularJS/Restangular索引JSON数据提取
- 如何从 API 响应中提取部分 JSON
- jQuery在一个非常大的字符串中提取一个json子字符串
- 如何在javascript/html中使用从外部php文件中提取的JSON数据?
- 从未知json结构中提取所有json键