[JS] navigator.sendBeacon 사용 시 content-type 지정하는 법

식빵·2023년 7월 17일
0

참고: https://stackoverflow.com/questions/45847276/navigator-sendbeacon-with-application-x-www-form-urlencoded

Content-Type header that Beacon API use, depend on type of instance you pass to sendBeacon second parameter.


1. application/x-www-form-urlencoded

To send application/x-www-form-urlencoded, use UrlSearchParams instance.

var params = new URLSearchParams({
   key : 'apples',
   values : amountOfApples
});
navigator.sendBeacon(anUrl, params);

2. multipart/form-data

To send multipart/form-data header, use FormData instance.

var params = new FormData();
params.append('key', 'apples');
params.append('value', amountOfApples);
navigator.sendBeacon(anUrl, params);

3. application/json

To send application/json header, use Blob and set its type.

var data = {
   key : 'apples',
   values : amountOfApples
};

var params = new Blob(
    [JSON.stringify(data)], 
    {type : 'application/json'}
);
navigator.sendBeacon(anUrl, params);
profile
백엔드를 계속 배우고 있는 개발자입니다 😊

0개의 댓글