【问题标题】:Xbox API usage PHPXbox API 使用 PHP
【发布时间】:2021-01-15 03:59:51
【问题描述】:

我一直在使用 xapi.us 以便使用他们的 API 从 XBL 获取我的剪辑,使用下面的代码,我设法在我的页面上获得了结果...

<?php 
$uxid = rawurlencode("PROFILE ID");

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,"https://xapi.us/v2/{$uxid}/game-clips");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    "X-Auth: API KEY",
]);

$info = curl_exec($ch);

curl_close ($ch);

echo $info
?>

这是我相信的结果是 JSON...

[{
    "gameClipId": "34aabe8a-0d04-4940-81cd-d3fb20916c8c",
    "state": "Published",
    "datePublished": "2021-01-14T03:24:21.462109Z",
    "dateRecorded": "2021-01-14 01:59:00",
    "lastModified": "2021-01-14 03:24:21",
    "userCaption": "",
    "type": "UserGenerated",
    "durationInSeconds": 29,
    "scid": "d1adc8aa-0a31-4407-90f2-7e9b54b0347c",
    "titleId": 175227487,
    "rating": 0,
    "ratingCount": 0,
    "views": 0,
    "titleData": "",
    "systemProperties": "260d3869-a9ce-4942-ac54-79f6456773d10;",
    "savedByUser": true,
    "achievementId": "",
    "greatestMomentId": "",
    "thumbnails": [
      {
        "uri": "https://gameclipscontent-t2015.xboxlive.com/xuid-2533275001057958-public/34aabe8a-0d04-4940-81cd-d3fb20916c8c_Thumbnail.PNG",
        "fileSize": 0,
        "thumbnailType": "Small"
      },
      {
        "uri": "https://gameclipscontent-t2015.xboxlive.com/xuid-2533275001057958-public/34aabe8a-0d04-4940-81cd-d3fb20916c8c_Thumbnail.PNG",
        "fileSize": 0,
        "thumbnailType": "Large"
      }
    ],
    "gameClipUris": [
      {
        "uri": "https://gameclipscontent-d2015.xboxlive.com/xuid-2533275001057958-private/34aabe8a-0d04-4940-81cd-d3fb20916c8c.MP4?sv=2015-12-11&sr=b&si=DefaultAccess&sig=rVMEhFFUBNs0CZ%2BDMZoKiSvHHEWjpFcGSfvCR5XmLH4%3D&__gda__=1610684218_953e590c0692005ef4655d3c29afa051",
        "fileSize": 53206064,
        "uriType": "Download",
        "expiration": "2021-01-15 04:16:58"
      }
    ],
    "xuid": 2533275001057958,
    "clipName": "",
    "titleName": "Apex Legends™",
    "gameClipLocale": "en-GB",
    "clipContentAttributes": "None",
    "deviceType": "Scarlett",
    "commentCount": 0,
    "likeCount": 0,
    "shareCount": 0,
    "partialViews": 0,
    "gameClipDetails": "https://xapi.us/v2/2533275001057958/game-clip-details/d1adc8aa-0a31-4407-90f2-7e9b54b0347c/34aabe8a-0d04-4940-81cd-d3fb20916c8c"
  }]

我将如何获得 gameClipUris.uri ?我已经尝试过 echo $gameClipUris.uri,但我不完全确定我在这里要做什么,我只是在谷歌上搜索,看看是否有任何效果。

编辑:

我试过了,还是不行。

    <?php 
header('Content-Type: application/json');
$uxid = rawurlencode("2533275001057958");

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,"https://xapi.us/v2/{$uxid}/game-clips");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    "X-Auth: API Key",
]);

$info = curl_exec($ch);

curl_close ($ch);

$clip = json_decode($info);

echo $clip->gameClipId;
?>

【问题讨论】:

    标签: javascript php jquery json


    【解决方案1】:

    您的 JSON 包含一组对象(在本例中,是一个包含一个对象的数组)。 gameClipUris 也是一个数组:

    $clip = json_decode($info);
    echo $clip[0]->gameClipUris[0]->uri; // expected output
    

    使用print_r() 以人类可读的方式读取变量,这很有帮助。

    https://www.php.net/manual/en/function.print-r.php

    【讨论】:

    • 这很好,谢谢,有没有办法让它返回所有 gameClipUris ?因为有几个。
    • 暂停了,我会更新我的问题,为想要使用它的人提供更多信息,谢谢!
    猜你喜欢
    • 1970-01-01
    • 2020-05-06
    • 2016-12-11
    • 1970-01-01
    • 1970-01-01
    • 2013-12-31
    • 1970-01-01
    • 1970-01-01
    • 2017-04-05
    相关资源
    最近更新 更多