Volver a la versión inglesa de la documentaciónmodelo de contenido JSON
modelo de contenido JSON
Última actualización: 04 oct 2024
El modelo de contenido JSON se utiliza para acceder al contenido almacenado en formato JSON. Proporciona una API básica para permitir que los llamantes extraigan valores suponiendo que saben a qué valores se va a acceder.
Método | Tipos de retorno | Descripción |
---|---|---|
getJSONAsString() |
String |
Devuelve el contenido JSON como serie de caracteres. |
getObjectAt(<List of cbjecta> path, JSONArtifact artifact) throws
Exception |
Object |
Devuelve el objeto situado en la vía de acceso especificada. El artefacto raíz proporcionado puede ser nulo, en cuyo caso se utiliza la raíz del contenido. El valor devuelto puede ser una serie literal, entero, real o booleano, o un artefacto JSON (ya sea un objeto JSON o una matriz JSON). |
getChildValuesAt(<List of object> path, JSONArtifact artifact) throws
Exception |
Hash table (key:object, value:object> |
Devuelve los valores hijo de la vía de acceso especificada si la vía conduce a un objeto JSON, o devuelve nulo en caso contrario. Las claves de la tabla son series, mientras que el valor asociado puede ser una serie literal, entero, real o booleano, o un artefacto JSON (un objeto JSON o una matriz JSON). |
getChildrenAt(<List of object> path path, JSONArtifact artifact) throws
Exception |
List of objects |
Devuelve la lista de objetos situados en la vía de acceso especificada si la vía conduce a una matriz JSON, o devuelve nulo en caso contrario. Los valores devueltos pueden ser una serie literal, entero, real o booleano, o un artefacto JSON (ya sea un objeto JSON o una matriz JSON). |
reset() |
void |
Desecha cualquier almacenamiento interno asociado con el modelo de contenido (por ejemplo, un objeto DOM almacenado en memoria caché). |
Script de ejemplo
Si un nodo generador de resultados crea una salida basada en el formato JSON, puede utilizar lo siguiente para acceder a la información sobre un conjunto de libros:
results = []
outputbuilder.run(results)
output = results[0]
cm = output.getContentModel("jsonContent")
bookTitle = cm.getObjectAt(["books", "ISIN123456", "title"], None)
# Alternatively, get the book object and use it as the root
# for subsequent entries
book = cm.getObjectAt(["books", "ISIN123456"], None)
bookTitle = cm.getObjectAt(["title"], book)
# Get all child values for aspecific book
bookInfo = cm.getChildValuesAt(["books", "ISIN123456"], None)
# Get the third book entry. Assumes the top-level "books" value
# contains a JSON array which can be indexed
bookInfo = cm.getObjectAt(["books", 2], None)
# Get a list of all child entries
allBooks = cm.getChildrenAt(["books"], None)