Как мне использовать питон код в javascript коде сайта
const rangeVideo = async (player, mimeCodec, resource) => {
const mediaSource = new MediaSource;
player.src = URL.createObjectURL(mediaSource);
await new Promise(resolve => mediaSource.onsourceopen = resolve);
URL.revokeObjectURL(player.src);
const sourceBuffer = mediaSource.addSourceBuffer(mimeCodec);
const response = await fetch(resource, { method: 'HEAD' });
const contentLength = response.headers.get('Content-Length');
const segmentLength = 1 * 1024 * 1024;
let fetchedLength = -1;
while (true) {
if (fetchedLength >= contentLength) break;
const response = await fetch(resource, {
headers:{'Range':`bytes=${fetchedLength+1}-${fetchedLength+=segmentLength}`}
});
const value = await response.arrayBuffer();
sourceBuffer.appendBuffer(value);
await new Promise(resolve => sourceBuffer.onupdateend = resolve);
//console.count();
//await delay(2000);
}
};
const streamVideo = async (player, mimeCodec, resource) => {
const mediaSource = new MediaSource;
player.src = URL.createObjectURL(mediaSource);
await new Promise(resolve => mediaSource.onsourceopen = resolve);
URL.revokeObjectURL(player.src);
const sourceBuffer = mediaSource.addSourceBuffer(mimeCodec);
const response = await fetch(resource);
const readableStream = response.body;
const reader = readableStream.getReader();
while (true) {
const { value, done } = await reader.read();
if (done) break;
sourceBuffer.appendBuffer(value);
await new Promise(resolve => sourceBuffer.onupdateend = resolve);
//console.count();
}
};
//const delay = ms => new Promise(resolve => setTimeout(resolve, ms));
const data = [
document.querySelector('video'),
'video/mp4; codecs="avc1.42E01E, mp4a.40.2"',
'https://nickdesaulniers.github.io/netfix/demo/frag_bunny.mp4',
];
//rangeVideo(...data);
//streamVideo(...data);
$('.click')
.on('click', function () {
let $this = $(this);
let date = $this.data('date');
let step = $this.data('step');
let timestamp = date.setTime(date.getTime() + step);
console.log(date);
})
.data('date', new Date)
.data('step', -7 * 24 * 60 * 60 * 1000) // 7 дней назад
//.data('step', 14 * 24 * 60 * 60 * 1000) // 14 дней вперед
//.data('step', -12 * 60 * 60 * 1000) // 12 часов назад
//.data('step', 30 * 60 * 1000) // 30 минут вперед
> path/to/folder/adb.exe
Notifications permission has been blocked as the user has ignored the permission prompt several times. This can be reset in Page Info which can be accessed by clicking the lock icon next to the URL. See https://www.chromestatus.com/feature/6443143280984064 for more information.
// В порядке выполнения:
xhr.onloadstart // 1
xhr.upload.onloadstart // 2
xhr.upload.onprogress // 3
xhr.upload.onload // 4
xhr.upload.onerror // 4
xhr.upload.onabort // 4
xhr.upload.ontimeout // 4
xhr.upload.onloadend // 5
// download
xhr.onprogress // 6
xhr.onload // 7
xhr.onerror // 7
xhr.onabort // 7
xhr.ontimeout // 7
xhr.onloadend // 8
xhr.onreadystatechange // 6-8
function request(options) {
let requestJson = options.data;
let requestBody = JSON.stringify(requestJson);
let xhr = new XMLHttpRequest();
xhr.open('POST', options.url);
xhr.setRequestHeader('Content-Type', 'application/json; charset=utf-8');
xhr.responseType = 'json';
xhr.onload = function () {
if (xhr.status == 200) {
if (xhr.response == null) {
options.error.call(xhr, 'FORMAT_ERROR');
} else {
options.success.call(xhr, xhr.response);
}
} else {
options.error.call(xhr, 'SERVER_ERROR');
}
};
xhr.onerror = function () {
options.error.call(xhr, 'NETWORK_ERROR');
};
xhr.send(requestBody);
}
function click() {
// ...FORM STUFF...
let requestData = { 'name1': 'value1', 'name2': 'value2' };
request({
url: 'json.php',
data: requestData,
success: function (response) {
console.log('XHR:', response);
// response['key1'], response['key2']
// ...TABLE STUFF...
},
error: function (message) {
console.error('XHR:', message);
},
});
}
<?php
// json.php
header('Content-Type: application/json; charset=utf-8');
$requestBody = file_get_contents('php://input');
$requestJson = json_decode($requestBody, true);
// $requestJson['name1'], $requestJson['name2']
// ...DATABASE STUFF...
$responseJson = [ 'key1' => 'value1', 'key2' => 'value2' ];
$responseBody = json_encode($responseJson);
echo $responseBody;