Supprimer la citation de la réponse HTTP (type de données de chaîne) à transmettre dans l'API post

J'ai une API renvoyant des données (format de chaîne) comme celle-ci

84, 101, 115, 116

Mais quand j'appelle cela au pouvoir automatiser la réponse que j'obtiens via HTTP post est entre guillemets

"84, 101, 115, 116"

Est-il possible de l'obtenir sans guillemet " ", car j'ai besoin de la sortie pour envoyer une autre API qui échoue si je l'envoie

avec "".

La raison en est qu'il doit transmettre la réponse à une autre API qui accepte le tableau d'octets

comme ça [84, 101, 115, 116]

actuellement, le flux entrant est envoyé en tant que ["84, 101, 115, 116"], ce qui échoue à l'API

J'ai essayé la fonction de remplacement mais cela ne fonctionne pas pour mon cas.


Solution du problème

Je pense que vous devez diviser vos textes en un tableau.

Commencez par initialiser trois variables comme indiqué ci-dessous...

Flux 1

... comme vous pouvez le voir, j'ai initialisé une variable chaîne avec vos valeurs, elle n'affiche pas les guillemets mais elle est déclarée comme une chaîne donc quand elle la traitera, les guillemets seront là.

Dans les étapes suivantes, j'initialise une variable tableau qui a l'expression suivante...

split(replace(variables('Response'), ' ', ''), ',')

... puis un tableau vide qui stockera les valeurs numériques résultantes.

Après ce qui précède, parcourez chaque valeur trouvée et ajoutez-la au tableau de nombres, cela convertira la valeur sous forme de chaîne en valeur numérique.

Flux 2

L'expression ci-dessus est...int(item())

Cela produit alors ce résultat et c'est ce tableau qui peut ensuite être transmis à votre prochain appel d'API.

Résultat

Il s'agit de la définition JOSN que vous pouvez charger dans votre propre locataire pour voir la réponse dans son intégralité.

{
"definition": {
"$schema": "https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json#",
"actions": {
"For_each": {
"actions": {
"Append_to_array_variable": {
"inputs": {
"name": "Number Array",
"value": "@int(item())"
},
"runAfter": {},
"type": "AppendToArrayVariable"
}
},
"foreach": "@variables('String Array')",
"runAfter": {
"Initialize_Number_Array": [
"Succeeded"
]
},
"runtimeConfiguration": {
"concurrency": {
"repetitions": 1
}
},
"type": "Foreach"
},
"Initialize_Number_Array": {
"inputs": {
"variables": [
{
"name": "Number Array",
"type": "array"
}
]
},
"runAfter": {
"Initialize_String_Array": [
"Succeeded"
]
},
"type": "InitializeVariable"
},
"Initialize_String_Array": {
"inputs": {
"variables": [
{
"name": "String Array",
"type": "array",
"value": "@split(replace(variables('Response'), ' ', ''), ',')"
}
]
},
"runAfter": {
"Initialize__Response": [
"Succeeded"
]
},
"type": "InitializeVariable"
},
"Initialize__Response": {
"inputs": {
"variables": [
{
"name": "Response",
"type": "string",
"value": "84, 101, 115, 116"
}
]
},
"runAfter": {},
"type": "InitializeVariable"
},
"Initialize_variable": {
"inputs": {
"variables": [
{
"name": "Result",
"type": "array",
"value": "@variables('Number Array')"
}
]
},
"runAfter": {
"For_each": [
"Succeeded"
]
},
"type": "InitializeVariable"
}
},
"contentVersion": "1.0.0.0",
"outputs": {},
"parameters": {},
"triggers": {
"Recurrence": {
"evaluatedRecurrence": {
"frequency": "Month",
"interval": 12
},
"recurrence": {
"frequency": "Month",
"interval": 12
},
"type": "Recurrence"
}
}
},
"parameters": {}
}

Commentaires

Posts les plus consultés de ce blog

Erreur Symfony : "Une exception a été levée lors du rendu d'un modèle"

Détecter les appuis sur les touches fléchées en JavaScript

Une chaîne vide donne "Des erreurs ont été détectées dans les arguments de la ligne de commande, veuillez vous assurer que tous les arguments sont correctement définis"