Tengo varios dispositivos que quiero ejecutar un comando sobre una API, pero usar fetch no funciona como se esperaba. Como puede ver en la imagen, 9 solicitudes tardan aproximadamente un minuto en completarse, ya que la ejecución tarda unos 6 segundos por solicitud. Si disparo el comando, todos aparecen en la consola de desarrollo, pero "pendientes". ¿Por qué esto no funciona?
async function getExecuteOutput(devices, formData) { $.each(devices, async function( index, value ) { fetch( '/api/execute.php', { method: 'POST', body: foormData } ).then((resp) => resp.json()).then(response => { console.log(response); }); }); }La captura de pantalla muestra que se están ejecutando en paralelo. Puede ver las barras verdes en la captura de pantalla comenzando en el mismo punto. (Hasta cierto punto de todos modos: los navegadores limitan la cantidad de solicitudes HTTP que pueden tener en vuelo al mismo servidor).
La incapacidad de su código del lado del servidor para manejar eso (probablemente debido al bloqueo de la base de datos) no tiene nada que ver con fetch .