2010-06-29 5 views
2

J'ai une des questions que je me bats avec en ce qui concerne mon filtre HttpModule:HttpModule questions filtres

1) Je remarque que le module reçoit les données en morceaux de elle. Ceci est problématique pour moi parce que j'utilise une regex pour trouver et remplacer. Si j'obtiens un match partiel dans un morceau et le reste du match dans la seconde, ça ne marchera pas. Y a-t-il un moyen d'obtenir toute la réponse avant de faire mon travail? J'ai vu du code où il ajoute des données à un générateur de chaîne jusqu'à ce qu'il utilise une correspondance sur un "" tag de fin, mais mon code doit fonctionner pour plus que cela (xml, balises personnalisées, etc). Je ne sais pas comment détecter la fin du courant ou si c'est même possible.

Je joins le filtre dans BeginRequest.

+0

pourquoi avez-vous besoin d'un module http pour cela, est-il quelque chose qui pourrait être traitée dans une page avec sous-classé événement Load surchargée? Les modules sont utiles si vous voulez couvrir toutes les ressources .net (et non .net aussi), mais cela peut être juste une opération de page? –

+0

Non, il s'agit d'une fonctionnalité de remplacement de regex à l'échelle du site. Basiquement, il doit traiter tout html, xml, json, soap, tout ce qui peut contenir des données de texte. Il y a beaucoup d'exemples ici, mais ils sont tous configurés pour reconnaître une balise de fermeture en tant que marqueur de fin de flux. J'aimerais que le mien soit plus flexible. – NFX

Répondre

0

Jetez un oeil à this example. Il cherche "" dans le flux de la page.

0

Voici un exemple de projet qui effectue une recherche et un remplacement en tampon dans un HttpModule en utilisant un Request.Filter et un Response.Filter. Vous devriez être capable d'adapter cette technique pour effectuer un Regex facilement.

https://github.com/snives/HttpModuleRewrite