简体   繁体   English

如何从API请求/响应中获取和使用JSON参数值

[英]How to get and use a JSON parameter value from an API request/response

I'm working on a website and want to display or hide a div-tag depending on a parameter value I can find in an API response. 我在一个网站上工作,并且想要显示或隐藏div标签,具体取决于我可以在API响应中找到的参数值。

The link to the API information I need is https://api.hitbox.tv/media/status/masta where "masta" is replaced by my channel-name. 我需要的API信息的链接是https://api.hitbox.tv/media/status/masta ,其中“ masta”被替换为我的频道名称。 The response looks like this: {"media_is_live":"0","media_views":"2"} 响应如下所示: {"media_is_live":"0","media_views":"2"}

I prefer to only use pure javascript, but tried the code below using AJAX but didn't work. 我更喜欢只使用纯JavaScript,但使用AJAX尝试了以下代码,但没有用。 I'm not familiar with javascript, jQuery and AJAX so maybe I did some wrong code writing as well. 我不熟悉javascript,jQuery和AJAX,所以也许我也写了一些错误的代码。 Any suggestions?: 有什么建议么?:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<script>
$(document).ready(function() {
    $.ajax({
        type: "GET",
        dataType: "json",
        url: "https://api.hitbox.tv/media/status/masta",
        data: "media_is_live",
        success: function(data){
            if(data == "0") {
                document.getElementById("player").style.visibility = "hidden";
            }
            else {
                document.getElementById("player").style.visibility = "visible";
            }
        }
    });
});
</script>

<div id="player">[LIVESTREAM-PLAYER]</div>

Your ajax call should look like this. 您的ajax调用应如下所示。

The media_is_live is in the result, not in your query. media_is_live在结果中,而不在您的查询中。

$.ajax({
    type: "GET",
    dataType: "json",
    url: "https://api.hitbox.tv/media/status/masta",
    success: function(data){
        if(data.media_is_live == "0") {
            //Your code here
        }
        else {
            //Your code here
        }
    }
});

Try: 尝试:

$(document).ready(function() {
    $.ajax({
        type: "GET",
        dataType: "json",
        url: "https://api.hitbox.tv/media/status/masta",
        success: function(data){
            if(data.media_is_live === "0") {
                document.getElementById("player").style.visibility = "hidden";
            }
            else {
                document.getElementById("player").style.visibility = "visible";
            }
        }
    });
});

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM