ファイルアプリケーション - アップグレード戦略の取得
API 説明:クライアントのバージョン番号に基づいて、対応するアップグレード戦略を取得します
📮 リクエスト情報
リクエスト URL
POST https://api.upgrade.toolsetlink.com/v1/file/upgrade
リクエストヘッダー
| パラメータ名 | 必須 | 型 | 例 | 説明 |
|---|---|---|---|---|
| X-Timestamp | Yes | string | 2025-02-17T10:34:55+08:00 | RFC3339 形式のリクエスト時間 |
| X-Nonce | Yes | string | fc812cc0b9b51e8c | 一意のランダム文字列(少なくとも 16 文字) |
| X-AccessKey | Yes | string | mui2W50H1j-OC4xD6PgQag | AccessKey |
| X-Signature | Yes | string | 3603437250c2df51fc46426ac79d8995 | リクエスト署名 署名ルール |
| Content-Type | Yes | string | application/json |
🔐 リプレイ攻撃防止メカニズム
- サーバーは、サーバー時間とのタイムスタンプの差が ±5 分を超えないことを検証します
- サーバーは、Nonce 値が既に存在するかどうかを確認します(重複リクエストを防止するため)
リクエストボディ
json
{
"fileKey": "LOYlLXNy7wV3ySuh0XgtSg",
"versionCode": 1,
"appointVersionCode": 0,
"devModelKey": "stv1",
"devKey": "LOYlLXNy7w"
}リクエストボディパラメータ説明
| パラメータ名 | 必須 | 型 | 例 | 説明 |
|---|---|---|---|---|
| fileKey | Yes | string | LOYlLXNy7wV3ySuh0XgtSg | ファイルアプリケーションの一意の識別子 |
| versionCode | Yes | int | 1 | システムに記録されているバージョンコード |
| appointVersionCode | No | int | 0 | 希望するアップグレードバージョンコード、最新バージョンを要求するには空または 0 にする |
| devModelKey | No | string | stv1 | デバイスモデルの一意の識別子 |
| devKey | No | string | LOYlLXNy7w | デバイスの一意の識別子(MAC アドレスを一意の識別子として使用できます) |
📮 レスポンス情報
成功レスポンスボディ
json
{
"code": 200,
"msg": "新しいバージョンが見つかりました",
"data": {
"fileKey": "LOYlLXNy7wV3ySuh0XgtSg",
"versionName": "v2",
"versionCode": 2,
"urlPath": "http://file.com/2.exe",
"upgradeType": 1,
"promptUpgradeContent": "アップグレードプロンプトコンテンツ"
}
}レスポンスボディパラメータ説明
| パラメータ名 | 型 | 例 | 説明 |
|---|---|---|---|
| fileKey | string | LOYlLXNy7wV3ySuh0XgtSg | ファイルアプリケーションの一意の識別子 |
| versionName | string | v1 | バージョン名 |
| versionCode | int | 1 | バージョンコード |
| urlPath | string | http://file.com/2.exe | ファイルダウンロード URL |
| upgradeType | int | 1 | アップグレードタイプ: 1: プロンプトアップグレード; 2: サイレントアップグレード; 3: 強制アップグレード |
| promptUpgradeContent | string | アップグレードプロンプトコンテンツ | アップグレードプロンプト説明 |
典型的なエラーレスポンスボディ
json
{
"code": 404001,
"msg": "利用可能なバージョンが見つかりません",
"docs": "対応するアプリケーションバージョンが見つかりません。システムに正しく作成されているか確認してください。ドキュメントを参照してください:https://upgrade.toolsetlink.com/ja/upgrade/recommend/file/app-version.html",
"data": null
}📊 ステータスコード
| HTTP ステータスコード | コード | シナリオ説明 | 解決策 |
|---|---|---|---|
| 200 | 0 | リクエスト成功、既に最新バージョンです | |
| 200 | 200 | リクエスト成功、アップグレード戦略を取得 | |
| 400 | 400001 | 無効なリクエスト | |
| 400 | 400002 | パラメータが不足しています | |
| 400 | 400003 | 無効なパラメータ | |
| 400 | 400004 | 無効なヘッダー | |
| 400 | 400005 | 無効なリクエストボディ | |
| 401 | 401001 | 認証に失敗しました | |
| 401 | 401002 | 署名検証に失敗しました | |
| 404 | 404001 | リソースが見つかりません | |
| 404 | 404002 | レコードが見つかりません | |
| 404 | 404003 | 処理方法が見つかりません | |
| 404 | 404004 | リクエストが見つかりません | |
| 429 | 429001 | アプリケーションタスク戦略のリクエストレート制限 | 現在のアップグレードタスクに設定されているリクエストレート制限に達しました。後でもう一度お試しください。 |
| 500 | 500001 | サーバー内部エラー | お問い合わせください お問い合わせ |
| 500 | 500002 | サーバー内部データ検証に失敗しました | お問い合わせください お問い合わせ |