- Tengo una función javascript que realiza una petición ajax (XMLHTTPREQUEST) POST a un servidor, he lidiado con el problema del firefox y el cross-origin que primero realiza una petición OPTION y cuando recibe las cabeceras allow hace el post, bien todo eso está solucionado con CORS, esa función tiraba perfectamente desde un html simplon que la ejecutaba.
- El problema ha venido cuando la he ejecutado desde un formulario con el onsubmit, y es que la petición OPTION que hacía el firefox nunca esperaba a recibir las cabeceras.
Bien ese era el problema, la razón por la que el firefox no esperaba era porque el formulario era una petición asincrona y yo después hacía el POST asíncronamente, por lo que la primera petición asincrona terminaba rápido y nunca daba tiempo a ejecutarse el POST (que primero salía un OPTION porque le daba la gana al firefox). Todo esto lo he solucionado haciendo la petición POST síncrona, ahí todo perfecto.
Mi duda viene ahora, el evento onsubmit de un formulario siempre es asincrono?