La solución para esto es habilitar el manejo de caché para el archivo WSDL, que por defecto viene apagado en Magento.
Acceder al backend de Magento, luego a
System->Configuration->Magento Core API
Busca el rubro "Enabled WSDL Cache" y cámbialo a Yes.
Haciendo esto, mejorarás notablemente el tiempo de respuesta de las llamadas a la API, aclaro que esto funciona a partir de la versión 1.6 de Magento usando SOAP V2, para versiones anteriores hay una solución en este link: http://www.ivoronline.com/Coding/Languages/PHP/Tutorials/PHP - API - SOAP - Extension - Introduction.php
Este parámetro no existe en versiones anteriores a 1.6 de Magento, pero también existe una extensión comercial hecha por Alan Storm, y se llama "Mercury API Extension". Aunque también se puede mirar la clase
Mage_Api_Model_Server_Adapter_Soap
donde las versiones
anteriores de Magento deshabilitan esta caché.Esta solución fue tomada de Alan Storm desde Stackoverflow.com
Buenas tardes,
ResponderEliminarando buscando una forma de mejorar la respuesta del API de magento y he topado con tu solución. El problema es que pese a tener la versión 1.6.2. No aparece la opción de "Enabled WSDL Cache", aunque si las otras tres opciones. ¿a que puede ser debido?