legomolina / MetroVlcSchedule

A public API for MetroValencia
http://metrovlcschedule.tk/
GNU General Public License v3.0
11 stars 1 forks source link

Problema con AJAX en Cards #4

Closed leyorgar closed 6 years ago

leyorgar commented 6 years ago

Cuando realizo una petición GET con Ajax a través de Javascript me sale el problema "Access-Control-Allow-Origin" en la petición en Cards.

Muchas gracias.

tanrax commented 6 years ago

Si, yo también lo he comprobado con https://metrovlcschedule.herokuapp.com/api/v1/card/8564853124/balance

legomolina commented 6 years ago

Los headers están puestos: https://github.com/legomolina/MetroVlcSchedule/blob/master/app/controllers/CardsController.php#L14

image

Si estás haciendo la petición con jQuery hay que añadir xhrFields: { withCredentials: true } a la petición:

$.ajax({
        url: "url",
        dataType : "json",
        method: "get",
        xhrFields: { withCredentials: true },
        ...
});
tanrax commented 6 years ago

No consigo que funcione. Utilizo el siguiente código.

$.ajax({
        url: `https://metrovlcschedule.herokuapp.com/api/v1/card/078177304272/balance`,
        success: function (result) {
          console.log(result)
        },
        dataType : "json",
        method: "get",
        xhrFields: { withCredentials: true },
        async: false
      })
legomolina commented 6 years ago

No funciona porque has puesto 12 números y solo se admiten 10, tal como especifica metro valencia.

legomolina commented 6 years ago

He probado esto y funciona correctamente:

$.ajax({
        url: `https://metrovlcschedule.herokuapp.com/api/v1/card/8177304272/balance`,
        success: function (result) {
          console.log(result);
        },
        error: function (error) {
            console.log(error);
        },
        dataType : "json",
        method: "get"
      });
legomolina commented 6 years ago

¿Podríais confirmar que todo funciona correctamente?

tanrax commented 6 years ago

Funciona! Gracias