ASP.NET : Ajouter des variables serveur

Signaler
Messages postés
117
Date d'inscription
vendredi 12 avril 2002
Statut
Membre
Dernière intervention
13 avril 2007
-
Messages postés
117
Date d'inscription
vendredi 12 avril 2002
Statut
Membre
Dernière intervention
13 avril 2007
-
Bonjour à toutes et à tous.
J'ai 2 applis ASP.NET sur 2 serveurs différents.
La première doit passer des données à la seconde, mais sans passer par l'url.

Bêtement, je me dis "passe par les variables de session". Bah makache, j'ai l'impression que les variables de session sont associées à l'application qui les a créées (un e en trop non ^o^), car la variable de session créée par l'appli 1 n'est pas trouvée par l'appli 2.

Donc, je fouille un peu sur le net, et je trouve les Request.Params et Request.Servervariables.
Mais je n'arrive pas à rajouter d'élément à ces collections . (request.servervariables.add("MaVariable","MaValeur") ==> Collection en lecture seule !!!, idem pour les params).

Donc, si quelqu'un pouvait me filer un ch'tit coup de paluche pour m'expliquer comment passer des données entre mes 2 applis sans passer par l'url, ça serait super méga cool.

Merci d'avance

@peluche, et bon dév' DA

3 réponses

Messages postés
6814
Date d'inscription
dimanche 15 décembre 2002
Statut
Modérateur
Dernière intervention
13 octobre 2010
22
Bonsoir effectivement une variable session est heureusement propre à l'application.

Pour ce que tu veux faire, il faut passer par une base sql ou alors un fichier xml ... les variables que tu essaye de modifier sont en lecture seule et découle de la request en cours ; params = querystring ou form, et servervariable c'est des variables sur le nom de l'appli, le chemin etc...


<HR>
Cyril - MVS - MCP
Messages postés
1648
Date d'inscription
samedi 6 novembre 2004
Statut
Modérateur
Dernière intervention
28 avril 2011
2
Salut,

Tu peux également passer par une requête POST :
- Soit tu crées dans une de tes pages un HttpWebRequest, et tu envoies en paramètres POST tes données à la page de l'autre application.
Dans la page qui va les recevoir, tu peux les récupérer par Request.Form("") et renvoyer ce que tu veux à la première application (quelque chose pour indiquer que ça a marché ). Cette option là est totalement transparente vis-à-vis de l'utilisateur.

- Soit tu mets tes donnnées dans un champ Hidden par exemple (et tu les cryptes de préférence !), tu modifies le paramètre "action" de la balise form pour le faire pointer vers l'autre page (car je crois qu'on ne peux pas utiliser le CrossPage PostBack entre 2 applications web différentes ). Dans ce cas l'utilisateur est redirigé vers la page en question en même temps que les données.
(je déconseille cette méthode : c'est plutôt crade comme technique )

Sinon, l'idée d'un fichier XML est pas mal : tu stokes les données dans un fichier xml temporaire, et tu passe l'url du fichier à la deuxième application par une des méthodes que j'ai cité juste au dessus !

<hr size="2" width="100%">Nurgle (Antoine)
Messages postés
117
Date d'inscription
vendredi 12 avril 2002
Statut
Membre
Dernière intervention
13 avril 2007

Salut, merci à tous les 2 pour vos conseils.
J'avais pensé au post, mais je ne l'ai pas pris car j'aurai été obligé de faire la méthode crade (on a pensé la même chose nurgle).
L'appli qui reçoit les données ne renvoie rien à la première.

Je pense que je vais prendre l'option du XML, en rajoutant une passe de cryptage sur les données.

Merci beaucoup.

@peluche, et bon dév' DA