navigator.sendBeacon()でAuthorizationヘッダーを追加したい
解決したいこと
Javascriptをコンテンツスクリプトとして拡張機能に組み込んで、特定のページを閉じた時にデータを送信するようにしたいのですが、navigator.sendBeacon()
を使ってサーバーにPOSTする時にAuthorizationヘッダーを追加したいです。
発生している問題・エラー
navigator.sendBeacon()
でContent-type
以外のヘッダーを変更できない
該当コード
window.onbeforeunload = function() {
navigator.sendBeacon("http://localhost:5000/video", JSON.stringify({"status": "closed"})); //このリクエストにAuthorizationヘッダーを追加したい
};
自分で試したこと
XMLHttpRequest
や$.post
(jQuery)や$.ajax
(jQuery)を試しましたが、どれも送信完了する前にページが閉じてキャンセルされてしまいます。
また、Blob
を使い変更しようとしましたが、Blobはtype
(Content-type
)しか指定できなかったので失敗しました。
参考
使用ブラウザはGoogle Chrome 107.0.5304.87、APIはFlaskです。
0