Как в хроме используя JS взять содержимое вкладки Response?
Вложений: 1
Я пытался перевести текст в аудио на сайте https://cloud.google.com/text-to-speech.
Открыв в моём софте браузер на основе Chromium (если быть точным тот же хром версии 110.0.5481.77 ) На сайте https://cloud.google.com/text-to-speech я нажал на кнопку "SPEAK IT". И в моих инструментах разработчика chrome я вижу на вкладке "Response" это содержание: { "audioContent": "UklGRv7JEgBXQVZFZm10IBAAAAABAAEAwF0AAIC7AAACABAAZGF0YdrJEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA вырезано здесь, потому что очень длинный текст AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==", "timepoints": [], "audioConfig": { "audioEncoding": "LINEAR16", "speakingRate": 1, "pitch": 0, "volumeGainDb": 0, "sampleRateHertz": 0, "effectsProfileId": [] } } Как я могу взять это содержимое вкладки Response? Вложение 4893 Я кстати моим софтом могу использовать JS в браузере. Не хочу использовать пост запрос потому что не получилось это сделать сколько я не пытался. |
Я бы на вашем месте смотрел в сторону Service Workers, headless browsers like a Puppeteer или попытался сэмулировать запрос от приложения.
|
Если руками запрос почему-то отправить не получается(хотя по-хорошему надо разбиваться именно с этим), то можно перед отправкой подменить xmlhttp\fetch и получить ответ таким образом, условно:
function callback(response) { console.log('response', response); } window.XMLHttpRequest.prototype.open = ((open) => function(method, url, async){ if (typeof url === 'string' && url.includes('site.ru/endpoint')) { this.addEventListener('load', () => callback(JSON.parse(this.responseText)), {once: true}); } return open.apply(this, arguments); })(window.XMLHttpRequest.prototype.open); window.fetch = ((fetch) => function(url, options){ const req = fetch.apply(this, arguments); if (typeof url === 'string' && url.includes('site.ru/endpoint')) { req.then(res => res.json()).then(callback); } return req; })(window.fetch); |
Часовой пояс GMT +3, время: 23:03. |