|
|
|
|
- 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
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. 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.
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).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|