Voici mon JavaScript qui prépare JSON que je vais utiliser pour correspondre à une réponse API lorsque j'imprime cela vient comme suit: P> [
{
"sku_code": "50",
"quantityNO": 2,
"min": 550,
"max": 13000,
"dtePrice": [
{
"date": "2019-04-11",
"listPrice": 6600,
"salePrice": 3870
},
{
"date": "2019-04-12",
"listPrice": 6600,
"salePrice": 3870
}
]
}
]
3 Réponses :
Je ne sais pas sur Karaté JS. Mais si Karaté JS convertit votre matrice en objet, vous pouvez reconvertir au tableau. Comme vous pouvez le constater que l'objet résultant est un tableau qui peut facilement être converti en matrice en utilisant la méthode «Array.From (QueryObject)». Modification: -
var squArray = [] for(j=loopincri ; j<(loopincri+skuCount); j++){ var skuJson = {"skuCode":skuCodes[j], "quantity":quantity}; squArray.push(skuJson); } let squArray = Array.from(squArray);
Oui, il y a un problème avec des tableaux si vous faites trop dans JS: https://stackoverflow.com/a/54256766/ 143475 - donc si vous faites Ma recommandation évite d'utiliser JS aussi loin que possible, essayez de Utilisez des natifs de karaté pour la boucle et la transformation, etc. Par exemple: p> oui, en utilisant karate.read () code> pour créer les morceaux de JSON, il devrait commencer à fonctionner.
lis () code> est une légère inconvénient, mais notez que vous pouvez Utilisez des expressions incorporées dans un fichier JSON. Cela sera corrigé dans une future version du karaté. P> p>
Quel est le contenu de Array.json ici?
Cela pourrait être de contournement pour surmonter que JDK Bug discuté dans https://stackoverflow.com/a/54256766/8615449
au lieu de retourner votre objet directement, Essayez, P>
* json myJson = JsFunction()
J'ai essayé ceci, il le convertit en tableau mais il ajoute "/" dans mes valeurs, la sortie devient donc "[\" skucode \ ": \" 58 \ ", \" Quantité \ ": 2}, {\" Skucode \ ": \" 60 \ ", \" Quantité \ ": 2}]"}] "
Je suis désolé que votre question et l'exemple ne suffisent pas à reproduire cela.
GR8, voudriez-vous mettre à jour votre réponse ici afin qu'il soit utile pour les personnes qui se réfèrent à ce post
J'ai utilisé json.stringify () pour le convertir en chaîne puis je suis retourné ceci à la variable JSON
frais. Mais soyez conseillé que json.stringify () code> dans karate b> ne fonctionne que lorsque vous avez un élément de données JavaScript pur.
Squarray code> est un tableau. Comment devient-il un objet?
Il devient objet dans l'outil de karaté
Oh, ça ne te dérange pas alors
Pouvez-vous m'aider à le réparer?
Je pense que c'est à cause de cette question que @ptrthomas mentionné dans ce fil Stackoverflow.com/q/54256534/8615449 . mais pas sûr.