Je développe actuellement un service WCF RESTful. Dans le cadre de la validation des données POST, je lance des exceptions si la requête XML n'est pas conforme à nos règles métier.WCF + REST: Où sont les données de demande?
L'objectif est d'envoyer un courrier électronique au personnel concerné si une demande est considérée comme non valide. Mais, avec les en-têtes de requête entrants, la méthode et l'URI, je voudrais également envoyer le XML qui a été posté.
Je n'ai pas réussi à trouver un moyen d'accéder à ces données. La WCF détruit-elle réellement le corps/les données de la requête avant que j'aie eu la chance d'y accéder ou ai-je oublié quelque chose?
Votre aide est appréciée car je ne comprends pas pourquoi je ne peux pas accéder aux données de la demande.
vache sainte!C'est encore pire que ma solution :-) –
D'accord, l'avantage est que nous n'avons pas à faire passer une deuxième copie de la couche de transport avec un inspecteur de message à chaque requête. De cette façon, nous pouvons obtenir le tampon original directement à partir du code de service, et seulement en cas de problème. D'où ma prudence d'origine. :) J'aurais aimé qu'ils l'exposent simplement sur le WebOperationContext, mais après l'avoir démonté, je vois pourquoi ils ne le font pas (surtout quand vous considérez des requêtes streamées de taille arbitraire). – nitzmahone
Merci de répondre. Je comprends maintenant pourquoi vous prenez cette approche. Il est intéressant de savoir que pour comprendre pourquoi la WCF fonctionne comme elle le fait, il faut creuser dans la mise en œuvre. Cela va en quelque sorte à l'encontre du but d'essayer d'abstraire la complexité! –