AYUDA EN LÍNEA
 WINDEVWEBDEV Y WINDEV MOBILE

Este contenido se ha traducido automáticamente.  Haga clic aquí  para ver la versión en inglés.
Ayuda / WLanguage / Funciones WLanguage / Funciones específicas de la Web / Funciones varias de WEBDEV
  • Interrogar un servidor del mismo dominio o de un dominio diferente
  • Página de devolución de los datos en formato JSON
  • IMPORTANTE: Validez de JSON
  • Seguridad
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReportes y ConsultasCódigo de Usuario (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Código Navegador
WINDEV Mobile
AndroidWidget Android iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Otros
Procedimientos almacenados
Llama a una URL del servidor que devuelve datos en formato JSON (JavaScript Object Notation). Los datos del servidor se evalúan y se devuelven en formato de objeto.
Ejemplo
MyContacts is dynamic object
MyContacts = JSONExecute(FolderWeb() + "US/Page_Object.awp?id=12")
 
// Process the data received
FOR i = 1 _TO_ Dimension(MyContacts:List)
ListAdd(LIST_List_of_contacts, MyContacts:List[i]:Name + ...
" " + MyContacts:List[i]:FirstName)
END
Sintaxis

Sintaxis sincrónica: la función se bloquea hasta que se reciben los datos Ocultar los detalles

<Result> = JSONExecute(<Page URL>)
<Result>: Objeto dinámico
Datos devueltos por el servidor. Este resultado debe asignarse a un objeto cuyo tipo sea objeto dinámico.
<Page URL>: Cadena de caracteres
URL de la página que devuelve los datos en formato JSON. Esta URL puede ser una URL de Partial o una URL completa.
  • Si la URL no comienza con 'http:', esta URL se utiliza directamente. Atención: el dominio debe encontrarse en el dominio de la página actual (o en un subdominio), de lo contrario la llamada falla.
  • Si la URL empieza por '/', se considera como ruta completa en el dominio actual.
  • En todos los demás casos, la URL se considera como ruta relativa al directorio de la página actual..

Sintaxis asíncrona: un Procedure se ejecuta cuando se reciben los datos Ocultar los detalles

JSONExecute(<Page URL> , <Procedure name>)
<Page URL>: Cadena de caracteres
URL de la página que devuelve los datos en formato JSON. Este URL puede ser un URL de Partial o un URL completo.
  • Si la URL no comienza con 'http:', esta URL se utiliza directamente. Atención: el dominio debe encontrarse en el dominio de la página actual (o en un subdominio), de lo contrario la llamada falla.
  • Si la URL empieza por '/', se considera como ruta completa en el dominio actual.
  • En todos los demás casos, la URL se considera como ruta relativa al directorio de la página actual..
<Procedure name>: Cadena de caracteres
Nombre del procedimiento del navegador (procedimiento global o local) que realiza la Process de los datos de la JSON.
Este procedimiento tiene el siguiente formato:
PROCEDURE <Browser procedure> (<JSON result of call>)
El parámetro pasado a este Procedure es un objeto dinámico, que contiene los datos de JSON. Debe indicarse en la declaración de la Procedure.
Observaciones

Interrogar un servidor del mismo dominio o de un dominio diferente

En la mayoría de los casos, el servidor se encuentra en el dominio que alberga el sitio.. En este caso, no se requiere ninguna operación específica..
Al interrogar a un servidor desde otro dominio:
  • el servidor debe implementar el protocolo CORS,
  • el sitio curernt debe ser permitido a Contact el servidor.
Para más detalles, consulte https://www.w3.org/wiki/CORS sobre el protocolo CORS (Cross-Origin Resource Sharing).

Página de devolución de los datos en formato JSON

La página que devuelve los datos en formato JSON puede ser una página AWP, una página PHP u otro tipo de página.
Si esta página es una página WEBDEV, esta página puede estar en formato AWP o en formato PHP. Esta página debe devolver los datos en formato JSON con Pantalla StringDisplay. Además, StringToUTF8 también debe utilizarse para get un formato válido.
Por ejemplo, el siguiente código se utiliza para crear la cadena que será devuelta. Este string contiene el código utilizado para definir un objeto y un array. El código utilizado es código Javascript.
sObject is string = [
{id: 12,
List:  [
{Name: "smith", FirstName: "john"},
{Name: "doe", FirstName: "mary"},
{Name: "martin", FirstName: "laura"}]
}
]
StringDisplay(StringToUTF8(sObject))

IMPORTANTE: Validez de JSON

No se realiza ningún control sobre la validez de la JSON recibida del servidor. Asegúrese de que la página llamada sea una página de confianza para evitar tener una inyección de JavaScript en la página actual.

Seguridad

Para aumentar la seguridad de los datos transmitidos, tiene la posibilidad de utilizar una página secure (https).
Componente: WDJS.DLL
Versión mínima requerida
  • Versión 14
Comentarios
Haga clic en [Agregar] para publicar un comentario

Última modificación: 22/06/2022

Señalar un error o enviar una sugerencia | Ayuda local