La solicitud HTTP devuelve html en lugar de jsonHola
Intenté solicitar JSON desde una API usando el siguiente script:
request_neu = New HTTP Request(
URL( "https://redacted.com/api/path?fileType=Json" ),
Method( "GET" ),
//headers( {"Accept: text/plain", "Accept: text/html", "Accept: */*"} ),
//headers( {"Accept: */*"} ),
//I tried everything here
Headers( {"Accept: application/json"} ),
Username( "api.user" ),
Password( "redacted" ),
Timeout( 900000 )
);
response = request_neu << send;
show(request_neu << get mime type);
show(request_neu << get status);
show(request_neu << get status message);
show(substr(response,1,999));
JSON to data table(response);Agregué las declaraciones de depuración después de que la función JSON a la tabla de datos generara un error y el resultado sea
request_neu << get mime type = "text/html; charset=utf-8";
request_neu << get status = 200;
request_neu << get status message = "HTTP/1.1 200 OK";
Substr(response, 1, 999) = "
etc
Básicamente, en lugar de JSON, recibo html.
Lo interesante es que funciona con Postman, Python e incluso Excel.
Lo realmente interesante es que hace unos meses cuando creé este script también estaba funcionando.
¿Tienes alguna idea de lo que está pasando aquí?
Gracias
Acceso a los datosRe: La solicitud HTTP devuelve html en lugar de json¿Has intentado ver qué contiene el HTML? Por ejemplo, podrías guardarlo como una página .html usando Guardar archivo de texto().
No veo rápidamente nada malo en su sintaxis, a continuación se muestra un ejemplo ligeramente modificado del índice de secuencias de comandos
Names Default To Here(1);
request = New HTTP Request(
url("http://httpbin.org/get"),
Method("GET"),
Headers({"Accept: application/json"}),
Username("ross"),
Password("Abc123"),
);
data = request << Send;
Show(request << get response headers, request << get last url);
Re: La solicitud HTTP devuelve html en lugar de jsonCuando miré el html, se parece a la página web de la plataforma, excepto que los enlaces relativos están rotos.
Me temo que tendré que hablar con los responsables de la plataforma ya que el error parece venir de ahí.
Re: La solicitud HTTP devuelve html en lugar de json"Aceptar: aplicación/json" es sólo una pista para el servicio web sobre el tipo de respuesta que desea que le devuelva.
Los servicios web son completamente gratuitos para ignorarlo.
¿Es este un servicio web externo o uno desarrollado "interno"? Si es "interno", entonces querrá hablar con el desarrollador sobre la devolución de datos json cuando lo solicite un cliente.
Si es externo, ¿puedes publicar el documento API?
Re: La solicitud HTTP devuelve HTML en lugar de JSON¿Todo está bien?