J'ai une macro Excel VBA qui fait l'équivalent du HTTP POST suivants qui fonctionne avec succès:Pourquoi la déclaration de contenu en tant que chaîne entraîne-t-elle WinHttp à ne pas envoyer de contenu HTTP dans Excel VBA?
Set WebClient = CreateObject("WinHttp.WinHttpRequest.5.1")
' ... Configure WebClient for a POST request
RequestBody = "<request>"
WebClient.send RequestBody
Auparavant, j'avais mis explicitement le type de RequestBody en tant que chaîne comme dans ce qui suit:
Set WebClient = CreateObject("WinHttp.WinHttpRequest.5.1")
' ... Configure WebClient for a POST request
Dim RequestBody As String
RequestBody = "<request>"
WebClient.send RequestBody
Cela semble fonctionner correctement, sauf que le serveur n'a reçu aucun contenu de requête. Lors du débogage des deux versions, une surveillance sur RequestBody a décrit son type en tant que 'Variant/String' et le contenu était correct. Pourquoi l'ajout d'un type provoque-t-il ce problème?
Pourquoi l'ajout d'un type provoque-t-il ce problème?
Je m'attendrais à ce qu'il lance une sorte d'erreur au moment de l'exécution si une chaîne est passée, mais à la place il n'envoie rien. –