Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1540 connectés 

  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  [C#] REST, méthode POST, valeur du stream, doit il être encodé ?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[C#] REST, méthode POST, valeur du stream, doit il être encodé ?

n°2131192
Clarkent
Musclor le shérif de l'espace
Posté le 13-03-2012 à 19:58:40  profilanswer
 

Bonjour,
 
J'ai une question existentielle sur l'appel de la méthode POST en HTTP et le fait d'alimenter le stream.
 
J'appel un web service REST, je créais l'entête HTTP, j'indique la méthode POST et j'alimente le stream avec du XML.
Le service récupère l'appel, le stream, et retrouve le contenu XML.
 
Cependant, lorsque j'effectue l'appel, je récupère le stream, et l'alimente avec un tableau byte[].
Et donc à aucun moment je ne l'ai encodé en UTF8, ni même encodé en base64.
Le serveur récupère le tout et lui ne le convertit pas non plus et tout marche.
 
Je me pose surtout la question de si je ne suis pas en train de tester des cas où tout est ok, mais que plusieurs autres poseront des problèmes si l'encodage n'est pas précisé et la conversion en base64 n'est pas effectuée.
 
Si je devais développer ce client et ce service dans les règles de l'art, serait il, systématiquement nécessaire de passer au moins par une conversion en base64, voir l'encoder en utf8 ?
 
Si oui, j'ai tout de même un souci, car le stream de l'appel web prend en paramètre un tableau de byte[], et une chaîne de caractère base64 se convertit en string ou en char[], j'aurai donc une autre conversion vers un tableau de byte[],
Ce qui me semble vraiment tordu (dans certains cas, j'aurai un tableau de byte[] que j'encode en utf8, convertit en base 64, pour ensuite essayer de le convertir dans tableau de byte[] :ouch:).
 
Je ne sais pas si je suis très clair.
 
Cependant sur le web, 95% du temps les mecs s'en foutent, convertissent directement en tableau de byte[], sans préciser d'encodage ni de conversion en base64.
 
Auriez vous une suggestion ?


---------------
"PAR LE POUVOIR DU CRÂNE ANCESTRAL, JE DETIENS LA FORCE TOUTE PUISSANTE".
mood
Publicité
Posté le 13-03-2012 à 19:58:40  profilanswer
 

n°2131244
Clarkent
Musclor le shérif de l'espace
Posté le 14-03-2012 à 07:13:17  profilanswer
 


 
Merci Fred pour cette réponse précise.
 
Je me doutais de quelque chose comme ça, mais j'avais eu un problème de décodage d'une chaîne car certains caractères ne correspondaient pas à du base64, mais je ne me souviens plus du cas exact, du coup l'erreur venait peut être d'ailleurs.


---------------
"PAR LE POUVOIR DU CRÂNE ANCESTRAL, JE DETIENS LA FORCE TOUTE PUISSANTE".

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  [C#] REST, méthode POST, valeur du stream, doit il être encodé ?

 

Sujets relatifs
ecrire un programme qui lit une suite de valeur à partir d'un entier noptimisation SSE pour du code C (auto ou inline) [résolu]
[C] Petit bogue sur un bufferDeterminer date avec mktime
Programme pour ouvrir une fenêtre miniature en fonction de la T°Cerreur d'allocation mémoire dans une application console C++
pb liste chainée et lecture de fichier C[html] Page de chargement/méthode
besoin d'aide programmation C 
Plus de sujets relatifs à : [C#] REST, méthode POST, valeur du stream, doit il être encodé ?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR