Gestionnaire de script
L'API REST peut prendre en charge la plupart des cas d'utilisation pour l'extraction ou le traitement de données via une configuration simple. Il existe parfois des scénarios dans lesquels il est difficile d'extraire ou de traiter des données à l'aide d'API existantes. Dans ces cas, vous pouvez créer un script et non un point de lancement.
Vous pouvez appeler le script avec GET ou POST, par exemple:
https://myurl.com/maximo/api/script/SCRIPTNAME?lean=1Le tableau suivant répertorie les variables implicites.
| Nom de la variable | Description |
|---|---|
| Demande | Représentation OslcRequest de la demande effectuée. Cette variable montre des méthodes importantes telles que request.getQueryParam(“parameter” et request.getHeader(“header” pour récupérer des valeurs fournies en tant que paramètre de requête ou en-tête. Vous pouvez également accéder au UserInfo en appelant request.getUserInfo( ). |
| requestBody | Représentation sous forme de chaîne des données soumises sur demande pour POST, PATCH, PUT |
| httpMethod | Indique si cette méthode est une méthode GET, POST, PUT, etc. Il peut également être récupéré en appelant request.getHttpMethod( ). |
| responseBody | Le script définit cette variable sous la forme d'un octet [ ] ou d'une chaîne à renvoyer dans la réponse. Cette variable n'est pas requise si vous n'avez pas l'intention de renvoyer une réponse. |
| responseHeaders | Le script peut fournir davantage d'en-têtes à cette HashMap pour revenir à l'application appelante. |
L'exemple de script suivant modifie le site d'insertion par défaut de l'utilisateur en fonction du paramètre de requête.
# This example changes the user's default insert site based on the query parameter.
# This is different from setting it on the MAXUSER record because this updates for the current session.
from psdi.server import MXServer
maxServer=MXServer.getMXServer()
siteid=request.getQueryParam("siteid")
if siteid and maxServer.isValidSite(siteid):
userInfo=request.getUserInfo()
userSet=maxServer.getMboSet("MAXUSER",userInfo)
userSet.setQbeExactMatch(True)Appelez avec une demande GET/POST comme dans l'exemple suivant:
https://myurl.com/maximo/oslc/script/setinsertsite?lean=1&siteid=BEDFORD