8
votes

HttpClient postaync Format postal non valide non valide

J'essaie d'utiliser PostaSync de httpClient pour vous connecter à un site Web; Cependant, il échoue toujours et lorsque j'ai suivi la connexion en utilisant Wireshark, j'ai constaté qu'il publie les données de manière incorrecte

code xxx

ou xxx

utilisation xxx

attentes xxx

réalité xxx


2 commentaires

Y a-t-il une chance il y a un espace après le nom du paramètre d'URL codé sur un + ?


@Jason p je vais revérifier


3 Réponses :


4
votes

Je sais que cela fonctionne:

var values = new List<KeyValuePair<string, string>>();

values.Add(new KeyValuePair<string, string>("Item1", "Value1"));
values.Add(new KeyValuePair<string, string>("Item2", "Value2"));
values.Add(new KeyValuePair<string, string>("Item3", "Value3"));

using (var content = new FormUrlEncodedContent(values))
{
    client.PostAsync(postUri, content).Result)
}


3 commentaires

mais je ne vois aucune différence entre cela et le code que j'ai posté, mais je vais essayer d'essayer


Je suis d'accord, il n'y a pas de différence, et c'est le point, je sais que ce code fonctionne. Vous devriez rechercher des différences dans les valeurs :)


: D L'erreur était que je ne suis pas le httpclient: D comme Jason P indiqué, j'étais en quelque sorte avoir une place dans mes noms de paramètres. Toute façon merci beaucoup pour votre aide.



1
votes

Coupez les paramètres pour les espaces bleus possibles. Les espaces hâblés aboutissent à un + xxx


0 commentaires

0
votes

À mon avis, c'est plus agréable à voir: xxx

et un dictionnaire peut être utile pour rechercher des valeurs répétées lors de la chargement, sauf si vous avez besoin de touches répétées ...


0 commentaires