36 lines
1.3 KiB
HTML
36 lines
1.3 KiB
HTML
<!DOCTYPE html>
|
|
<head>
|
|
</head>
|
|
<body>
|
|
<script src="/resources/testharness.js"></script>
|
|
<script src="/resources/testharnessreport.js"></script>
|
|
<script src="/fetch/fetch-later/resources/fetch-later-helper.js"></script>
|
|
<script>
|
|
const PARAMS = new URL(location.href).searchParams;
|
|
const TARGET_URL= decodeURIComponent(PARAMS.get('url')) || '';
|
|
const BODY_TYPE = PARAMS.get('bodyType');
|
|
const BODY_SIZE = PARAMS.get('bodySize');
|
|
const BODY = BODY_TYPE !== null && BODY_SIZE !== null ? makeBeaconData(generatePayload(BODY_SIZE), BODY_TYPE) : null;
|
|
const REQUEST_INIT = Object.assign({},
|
|
PARAMS.has('activateAfter') ? {activateAfter: parseInt(PARAMS.get('activateAfter'), 10)} : null,
|
|
PARAMS.has('method') ? {method: PARAMS.get('method')} : null,
|
|
PARAMS.has('referrer') ? {referrer: PARAMS.get('referrer')} : null,
|
|
BODY !== null ? {body: BODY} : null,
|
|
);
|
|
|
|
function postMessageBack(message) {
|
|
if (window.opener) {
|
|
window.opener.postMessage(message, '*');
|
|
} else {
|
|
parent.postMessage(message, '*');
|
|
}
|
|
}
|
|
|
|
try {
|
|
fetchLater(TARGET_URL, REQUEST_INIT);
|
|
postMessageBack({type: FetchLaterIframeMessageType.DONE});
|
|
} catch (e) {
|
|
postMessageBack({type: FetchLaterIframeMessageType.ERROR, error: e});
|
|
}
|
|
</script>
|
|
</body>
|