Noticias

¡Ayuda a la Comunidad GM, haz una donación!

Comunidad Game Maker

Bienvenid@ a la comunidad hispana de Game Maker. Nuestro objetivo es crear videojuegos y dar soporte en castellano de GM. Para mejorar nuestro servicio hemos implantado, como adicion al reglamento general, algunas normas especificas en los subforos más comunes. ¡No olvides informarte antes de participar!.

Autor Tema: error al leer una llamada http  (Leído 730 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Broken

  • Visitante
  • *
  • Puntos: 13
  • Mensajes: 6
    • Ver Perfil
en: Junio 13, 2019, 12:32:26 am
Hola hace nada que he empezado a trabajar con llamadas http para escribir y leer datos desde un archivo online.
Puedo enviar datos a un archivo alojado en mi host y tambien leer sus datos. El problema es que de vez en cuando al leer los valores me salta este error.

############################################################################################
FATAL ERROR in
action number 1
of Async Event: HTTP
for object load:

file_text_write_string argument 2 incorrect type (undefined) expecting a String (YYGS)
 at gml_Object_load_Other_62 (line 11) -         file_text_write_string(file, result);
############################################################################################
--------------------------------------------------------------------------------------------
stack frame is
gml_Object_load_Other_62 (line 11)


Alguien que sepa sobre los eventos http puede ayudarme con este error??

 


No Tienes Permisos Para Dar Puntos
point 0 Puntos

Este tema no recibió puntos.


Desconectado NiuWeb

  • Flota de Justicia Particular.
  • Moderadores globales
  • Okupa
  • *
  • Puntos: 2825
  • Mensajes: 1.697
  • Agradecido: 141 veces
  • Sexo: Masculino
  • Rock anthem for saving the world.
    • Ver Perfil
Respuesta #1 en: Junio 13, 2019, 03:56:32 am
Estás intentando escribir el valor undefined en un archivo de texto. Muestra el código que usas para poderte ayudar.

El tiempo era tu aliado, humano, pero te ha abandonado.
Los Forerunners han regresado, esta tumba ahora es tuya.

-Ur-Didacta.


BA:STFW&RTFM
 


Desconectado Broken

  • Visitante
  • *
  • Puntos: 13
  • Mensajes: 6
    • Ver Perfil
Respuesta #2 en: Junio 13, 2019, 05:13:26 pm
este es el codigo
Código: [Seleccionar]
var result, evid;
evid = ds_map_find_value(async_load, "id");

switch (evid) {
    case async_ini:
        result = ds_map_find_value(async_load, "result");
        file_delete("Data.ini");
        file = file_text_open_write( "Data.ini" );
        file_text_write_string(file, result);
        file_text_close(file);
       

       
        alarm[0] = 1;
        break;
}

pero parece que lo arregle poniendo esta condicion si recibo el valor undefined, de momento no me esta dando el problema
Código: [Seleccionar]
var result, evid;
evid = ds_map_find_value(async_load, "id");

switch (evid) {
    case async_ini:
        result = ds_map_find_value(async_load, "result");
if result = undefined{

}else{
        file_delete("Data.ini");
        file = file_text_open_write( "Data.ini" );
        file_text_write_string(file, result);
        file_text_close(file);
       

       
        alarm[0] = 1;
        break;
}

}

 


Desconectado kostra

  • Legendario
  • *
  • Puntos: 2423
  • Mensajes: 2.007
  • Agradecido: 85 veces
  • Sexo: Femenino
  • Sé literalmente el sentido de la vida.
    • Ver Perfil
Respuesta #3 en: Junio 17, 2019, 09:08:11 am
Será que result no es string? Prueba poner string(result) cuando escribes en el file.
Y si result es nulo, ya lo veras escrito xd

"ola k ase clickarme o k ase"
la imagen no se quita xD
 


Desconectado NiuWeb

  • Flota de Justicia Particular.
  • Moderadores globales
  • Okupa
  • *
  • Puntos: 2825
  • Mensajes: 1.697
  • Agradecido: 141 veces
  • Sexo: Masculino
  • Rock anthem for saving the world.
    • Ver Perfil
Respuesta #4 en: Junio 18, 2019, 03:50:14 am
Te falta comprobar que la respuesta del servidor haya terminado de llegar antes de guardarla en el archivo.
if async_load[? 'status'] == 0 { //si el servidor ha respondido
    //bla bla bla
}

El tiempo era tu aliado, humano, pero te ha abandonado.
Los Forerunners han regresado, esta tumba ahora es tuya.

-Ur-Didacta.


BA:STFW&RTFM