GET (/users/xuid({xuid})/scids/{scid}/stats)
指定されたユーザーの代わりに、ユーザー統計名のコンマ区切りリストでスコープ指定されたサービス構成を取得します。
これらの URI のドメインは userstats.xboxlive.com
です。
解説
クライアントには、プレイヤーに代わって新しいプレイヤー統計システムのタイトル統計情報を読み書きする手段が必要です。
URI パラメーター
パラメーター | 型 | 説明 |
---|---|---|
xuid | GUID | 代わりにサービス構成にアクセスするユーザーの Xbox ユーザー ID (XUID)。 |
scid | GUID | アクセス対象のリソースが含まれているサービス構成の ID。 |
クエリ文字列パラメーター
パラメーター | 型 | 説明 |
---|---|---|
statNames | 文字列 | 唯一のクエリ文字列パラメーターは、コンマで区切られたユーザー統計名 URI の名詞です。たとえば、次の URI は、URI に指定されたユーザー ID に代わって 4 つの統計情報が要求されていることをサービスに通知します。
https://userstats.xboxlive.com/users/xuid({xuid})/scids/{scid}/stats/wins,kills,kdratio,headshots 1 回の呼び出しで要求できる統計情報の数には制限があります。その制限により、デベロッパーの利便性と URI の長さの実用性に対する "スイート スポット" が慎重に考慮されます。 たとえば制限は、600 文字の統計名テキスト (コンマを含む)、あるいは最大 10 種類の統計によって決定されます。 このような簡単な GET を有効にすると、よく要求される統計の HTTP キャッシュが可能になり、チャットを多用するクライアントの呼び出し量が減ります。 |
Authorization
コンテンツの分離とアクセス制御の各シナリオ用に実装された承認ロジックがあります。
- ランキングとユーザー統計はどちらも、呼び出し元が要求と共に有効な XSTS トークンを送信した場合に、任意のプラットフォームのクライアントから読み取ることができます。 書き込みは当然ながら、プレイヤー データ システムでサポートされているクライアントに限定されます。
- タイトル開発者は、パートナー センターでオープンまたは制限付きとして統計をマークできます。 ランキングはオープン統計です。 オープン統計には、ユーザーがサンドボックスから承認されている場合に SmartGlass、iOS、Android、Windows、Windows Phone、および Web アプリケーションからアクセスできます。 サンドボックスへのユーザー承認はパートナー センターで管理されます。
チェックの疑似コードは次のようになります。
If (!checkAccess(serviceConfigId, resource, CLAIM[userid, deviceid, titleid]))
{
Reject request as Unauthorized
}
// else accept request.
必須の要求ヘッダー
ヘッダー | 型 | 説明 |
---|---|---|
Authorization | 文字列 | HTTP 認証用の認証資格情報。 例の値: "XBL3.0 x=<userhash>;<token>"。 |
省略可能な要求ヘッダー
ヘッダー | 型 | 説明 |
---|---|---|
X-RequestedServiceVersion | この要求の送信先であるサービスのビルド名/番号。 要求は、ヘッダー、認証トークン内のクレームなどの有効性が確認された後でのみ、そのサービスにルーティングされます。 既定値: 1。 |
リクエストの本文
この要求の本体で送信されるオブジェクトはありません。
HTTP ステータス コード
サービスは、このリソースに対してこのメソッドで実行された要求に応答して、このセクションのステータス コードのいずれかを返します。 Xbox Live サービスで使用される標準 HTTP ステータス コードの一覧については、「標準 HTTP ステータス コード」を参照してください。
コード | 理由 | 説明 |
---|---|---|
200 | OK | セッションは正常に取得されました。 |
304 | 変更なし | リソースは最後の要求以降、変更されていません。 |
400 | Bad Request | サービスは無効な形式の要求を解釈できませんでした。 通常は、無効なパラメーターです。 |
401 | 未承認 | 要求にはユーザー認証が必要です。 |
403 | Forbidden | ユーザーまたはサービスに対して要求が許可されていません。 |
404 | Not Found | 指定されたリソースが見つかりませんでした。 |
406 | Not Acceptable | リソースのバージョンがサポートされていません。 |
408 | Request Timeout | リソースのバージョンがサポートされていません。MVC レイヤーによって拒否されます。 |
応答の本文
サンプル応答
{
"user": {
"xuid": "123456789",
"gamertag": "WarriorSaint",
"stats": [
{
"statname": "Wins",
"type": "Integer",
"value": 40
},
{
"statname": "Kills",
"type": "Integer",
"value": 700
},
{
"statname": "KDRatio",
"type": "Double",
"value": 2.23
},
{
"statname": "Headshots",
"type": "Integer",
"value": 173
}
],
}
}