1. はじめに
[INTRODUCTION GOES HERE]
1.1. 例
2. 廃止報告
廃止報告は、将来のブラウザのアップデートで動作しなくなる見込みのブラウザAPIや機能が使用されたことを示します。
廃止報告は report type "deprecation" を持ちます。
廃止報告は ReportingObserver から確認できます。
[Exposed =(Window ,Worker )]interface :DeprecationReportBody ReportBody { [Default ]object ();toJSON readonly attribute DOMString ;id readonly attribute object ?;anticipatedRemoval readonly attribute DOMString ;message readonly attribute DOMString ?;sourceFile readonly attribute unsigned long ?;lineNumber readonly attribute unsigned long ?; };columnNumber
廃止報告の body(JavaScript上では DeprecationReportBody)には、以下のフィールドが含まれます:
-
id: 削除予定の機能やAPIを識別する実装依存の文字列。この文字列は関連する報告のグルーピングや集計に利用できます。
-
anticipatedRemoval: 指定APIが削除されたブラウザバージョンが一般公開される(ベータやプレリリースチャンネルを除く)おおよその時期を示すJavaScript Dateオブジェクト(ISO 8601文字列として表示)。この値は警告の優先順位付けや並び替えに利用できます。不明な場合はnullとなり、廃止の優先度は低(実際には削除されない可能性あり)とみなされます。
-
message: 人が読める詳細説明の文字列で、通常はデベロッパーツールのコンソールに表示される内容に近いもの。messageは idごとに一意であるとは限りません(APIの利用方法等、追加情報を含む場合あり)。
-
sourceFile: 判明していれば、該当APIを最初に使用したファイル。不明な場合はnull。
-
lineNumber: 判明していれば、sourceFile内で該当APIが最初に使用された行番号。不明な場合はnull。
-
columnNumber: 判明していれば、sourceFile内で該当APIが最初に使用された列番号。不明な場合はnull。
注: 廃止報告は必ず default という名前のエンドポイントに配信されます。現時点ではこれを上書きする方法はありません。他種の報告のみを受け取って廃止報告を受け取りたくない場合は、他報告用エンドポイント名を別途設定してください。
3. 報告例
POST /reports HTTP/1.1
Host: example.com
...
Content-Type: application/reports+json
[{
"type": "deprecation",
"age": 32,
"url": "https://example.com/",
"user_agent": "Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Firefox/60.0",
"body": {
"id": "websql",
"anticipatedRemoval": "2020-01-01",
"message": "WebSQL は廃止され、Chrome 97(2020年1月頃)で削除されます",
"sourceFile": "https://example.com/index.js",
"lineNumber": 1234,
"columnNumber": 42
}
}]
}
4. セキュリティの考慮事項
帯域外報告全般のセキュリティ考慮事項については Reporting API §8 セキュリティの考慮事項 を参照してください。
このセクションの残りでは、廃止報告固有のセキュリティの考慮事項について述べます。
5. プライバシーの考慮事項
帯域外報告全般のプライバシー考慮事項については Reporting API §9 プライバシーの考慮事項 を参照してください。
このセクションの残りでは、廃止報告固有のプライバシーの考慮事項について述べます。