Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

377
Vistas
URL base incorrecta de Magento 2 en la llamada ajax en la página de pago

He actualizado la versión de Magento a 2.3.7. Después de eso, tengo un problema extraño en la página de pago que cuando llama a la función ajax, la URL se genera incorrectamente. antes era como

/rest/default/V1/guest-carts/AC72N37Vmo3uGMIXEVQfIDt1ubuZLJws/estimate-shipping-methods

pero después de actualizar la versión de Magento ahora es

/checkout/undefinedrest/default/V1/guest-carts/AC72N37Vmo3uGMIXEVQfIDt1ubuZLJws/estimate-shipping-methods

¿No estoy seguro de dónde se agrega este indefinido dentro de la URL?

Notas de investigación: -

La URL base segura e insegura está configurada correctamente. Lo revisé de nuevo

También navegué al archivo desde donde se genera esta llamada ajax, el archivo es vendor/magento/module-checkout/view/frontend/web/js/model/shipping-rate-processor/new-address.js

ingrese la descripción de la imagen aquí

Aquí se genera storage.post de la llamada ajax y tiene serviceurl y payload como argumentos.

en la función getRates: si consola.log "serviceUrl", muestra la siguiente URL

rest/default/V1/guest-carts/FsS4QvllSq1vpuxZuC8ycQa0VRMOcQCy/estimate-shipping-methods

lo que parece ser correcto, la función storage.post() toma esto como un argumento y se llama a la solicitud ajax, que luego ingresa a la función .fail()

Entonces, lo que creo es que el problema es dónde se agrega la parte frontal de la URL para realizar la llamada ajax que es http://sitename.local/checkout/undefined ---> y aquí de alguna manera se agrega el indefinido que rompe toda la url

Otros usuarios también encuentran el mismo problema, pero aún no hay una solución disponible.

https://magento.stackexchange.com/questions/256273/undefined-rest-api-checkout-cart https://community.magento.com/t5/Magento-2-x-Programming/Magento2-Wrong-base-url -en-llamada-ajax/td-p/435435

¿Alguien puede ayudarme con esto?

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Estoy respondiendo mi propia pregunta ya que pude solucionar el problema yo mismo.

No estoy seguro de si esta solución sería una solución general para todos los que enfrentan un problema similar, pero como en mi caso me ayudó a solucionar el problema, por lo que puede guiar a otros que enfrentan un problema similar, si la solución no es 100% precisa en su escenario. .

Así que en mi proyecto tenía un archivo como

 app/design/frontend/Birdbrain/default/Magento_Theme/templates/page/js/require_js.phtml

que tenía el siguiente código dentro

 <?php /** * Copyright © 2013-2017 Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ ?> <script> var require = { "baseUrl": "<?php /* @escapeNotVerified */ echo $block->getViewFileUrl('/') ?>" }; </script>

Después de eliminar este archivo de la fuente, se solucionó el problema explicado en la pregunta anterior y no surgieron otros problemas al eliminarlo.

Pensamientos: - Cuando revisé mi sistema de control de versiones, descubrí que este archivo se agregó en 2017 y desde entonces no se realizaron cambios en él, por lo que después de actualizar la versión de Magento a 2.3.x, de alguna manera entró en conflicto con algunos códigos más recientes y ya no tenía sentido, por lo que eliminarlo solucionó el problema, al menos para mí.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda