Así que tengo esta aplicación de entrega y para poder obtener la tarifa de entrega, necesito escribir manualmente la dirección y luego enviar el formulario para que la API pueda obtener la información y calcular automáticamente la tarifa de entrega.
En mi HTML tengo la configuración básica
<p id="foodTotal">Food Total $0.00</p> <p id="fee">Delivery Fee $0.00</p>Entonces, cuando elijo mis alimentos para ordenar, mi JS actualiza el HTML para el total de alimentos y mostraría
Food Total $10.00 //exampleSin embargo, mi tarifa de envío no sé cómo actualizar este valor ya que no es algo que pueda simplemente codificar en Javascript y escribir como se muestra a continuación porque la tarifa solo se calcula después de escribir la información de mi dirección.
document.getElementById("fee").textContent = `Your order total is: ${(fee)}`Tenga en cuenta que estoy usando express para recopilar los datos de mi formulario y actualizar la API
En mi función app.post, estoy usando un SDK y el código se ve así. Tenga en cuenta que no tengo que poner el valor de la tarifa en mi respuesta, ya que la API ya lo calcula automáticamente, por lo que agregar fee: .... no hace nada porque no puedo actualizar manualmente ese valor, solo la API puede cambiarlo basado en la distancia de la dirección.
app.post( "/https://openapi.doordash.com/drive/v2/deliveries", async (req, res) => { const client = new DoorDashClient( { developer_id: process.env.DEVELOPER_ID, key_id: process.env.KEY_ID, signing_secret: process.env.SIGNING_SECRET, }, ); const response = await client.createDelivery( { external_delivery_id: uuidv4(), // keep track of the generated id here or in the response pickup_address: "Address 123 XYZ Street", pickup_phone_number: "+18001234567", dropoff_contact_given_name: req.body.dropoff_contact_given_name, dropoff_address: req.body.street + req.body.city + req.body.zipcode, order_value: req.body.item1, }, );Entonces, cuando ejecuto el nodo index.js, obtengo todos mis datos en mi consola que muestran exactamente la tarifa, el valor del pedido, la dirección, etc. y también puedo mostrar estos datos en otra página después de enviarlos al incluir un html simple debajo de mi función.
Sin embargo, no veo cómo podría actualizar la primera página de mi aplicación con la tarifa de envío automáticamente sin enviar primero la información del formulario manualmente.