dpa84373 2014-07-22 06:10
浏览 41
已采纳

将PHP集成到JavaScript中以获取JSON

I installed PHP5 and Apache2 on an Linux vServer (8 Gb Ram ; 8 vCores) and I was scripting but I can't get rid of an error in my code. I'm trying to fetch JSON with integrated PHP but it doesn't work. Here is part of the source code:

function GameDetails(servername, serverurl, mapname, maxplayers, steamid, gamemode) {
    var data = '<?php header("access-control-allow-origin: http://api.steampowered.com");$jsonData = file_get_contents('http://api.steampowered.com/ISteamUser/GetPlayerSummaries/v0002/?key=*REMOVEDREMOVEDREMOVED&steamids=76561197960435530');echo $jsonData;?>';
    document.getElementById('server_name').innerHTML = jsonObj.response.players[0].personaname;
});
}

And here is the version after PHP Processing:

function GameDetails(servername, serverurl, mapname, maxplayers, steamid, gamemode) {
    var data = '{
        "response": {
            "players": [
            {
                "steamid": "76561197960435530",
                "communityvisibilitystate": 3,
                "profilestate": 1,
                "personaname": "Robin",
                "lastlogoff": 1405647102,
                "profileurl": "http://steamcommunity.com/id/robinwalker/",
                "avatar": "http://media.steampowered.com/steamcommunity/public/images/avatars/f1/f1dd60a188883caf82d0cbfccfe6aba0af1732d4.jpg",
                "avatarmedium": "http://media.steampowered.com/steamcommunity/public/images/avatars/f1/f1dd60a188883caf82d0cbfccfe6aba0af1732d4_medium.jpg",
                "avatarfull": "http://media.steampowered.com/steamcommunity/public/images/avatars/f1/f1dd60a188883caf82d0cbfccfe6aba0af1732d4_full.jpg",
                "personastate": 0,
                "realname": "Robin Walker",
                "primaryclanid": "103582791429521412",
                "timecreated": 1063407589,
                "personastateflags": 0,
                "loccountrycode": "US",
                "locstatecode": "WA",
                "loccityid": 3961
            }]
        }
    }';
    alert data;
    document.getElementById('server_name').innerHTML = data.response.players[0].personaname;
});
}

I know its a loading screen for a Garrys Mod Server. The Debug Console from Firefox says:

SyntaxError: unterminated string literal.

But it's just normal JSON. JSON examples from web works without errors.

  • 写回答

1条回答 默认 最新

  • dongmaqiu6084 2014-07-22 06:13
    关注
    var data = '{
    

    There's your unterminated string literal.

    You can't have a literal new line in the middle of a string literal in JS.

    Later, you are trying to access data as an object, not a string, anyway. Get rid of the quotes around it.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 stata安慰剂检验作图但是真实值不出现在图上
  • ¥15 c程序不知道为什么得不到结果
  • ¥40 复杂的限制性的商函数处理
  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题