supprimer les paramètres du body dans la response d'un appel d'API via POST
Le support des méthodes POST et PUT ont été ajoutés au requestHandler. Ils sont utilisés notamment lors de la création d'API.
Dans le cas de la mise en place d'une API sur OFBiz permettant d'exposer des services appelé via REST, lorsque l'appelant utilise les méthodes POST ou PUT avec un body, l'intégralité du body se retrouve dans la réponse retournée à l'appelant. Il n'est pas possible actuellement de supprimer les paramètres contenu dans le body pour qu'ils ne soient pas retournés à l'appelant.
Pour bien comprendre voici un exemple de trame récue par OFBiz :
{
"order":{
"externalOrderId":"1242",
"applicationId":"BO_DJB",
"businessUnit":"01FR01RET01",
"currencyUom":"EUR",
"customerSIRET":"_NA_",
"customerSegment":"BtoB",
"orderDate":"2019-05-23 11:41:05",
"orderItems":[
{
"productId":"10000",
"quantity":"1",
"unitPrice":10.32,
"externalSeqId":"1",
"itemTaxAmount":1.03,
"itemTaxId":"TVA3",
"itemAdjustmentAmount":0.10
}
]
}
}
Voici la réponse d'OFBiz :
{
"order": {
"externalOrderId": "1242",
"applicationId": "BO_DJB",
"businessUnit": "01FR01RET01",
"currencyUom": "EUR",
"customerSIRET": "_NA_",
"customerSegment": "BtoB",
"orderDate": "2019-05-23 11:41:05",
"orderItems": [
{
"productId": "10000",
"quantity": "1",
"unitPrice": 10.32,
"externalSeqId": "1",
"itemTaxAmount": 1.03,
"itemTaxId": "TVA3",
"itemAdjustmentAmount": 0.1
}
]
}
}
Il faudrait pouvoir indiquer que si oui ou non on souhaite le paramètre order
Une solution aurait pu etre de mettre en place un nouveau type de response : request-noparam afin de supprimer tous les paramètres et de pouvoir ajouter manuellement ceux que l'on souhaite retourner.
<response name="success" type="request-noparam" value="json">
<redirect-parameter name=""/>
</response>
J'ai essayé cette solution mais sans succès....