IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

FAQ ASP.NET/C#

FAQ ASP.NET/C#Consultez toutes les FAQ

Nombre d'auteurs : 39, nombre de questions : 371, dernière mise à jour : 15 juin 2021 

 
OuvrirSommaireNavigationGeneralUrls

Réponse : En utilisant le contructeur de la classe Uri comme ceci :

à partir de l'url courante :

 
Sélectionnez
Uri monUri  = new Uri(Request.Url, "../../autrePage.aspx");



ou à partir de n'importe quelle Url :

 
Sélectionnez
Uri monUri = new Uri(new Uri("http://www.exemple.com/Contenu/Categorie/Test.aspx"), "../../autrePage.aspx");

On peut obtenir une réprésentation sous forme de chaîne au lieu d'un objet Uri en appelant Tostring() sur les instances d'Uri :

 
Sélectionnez
Response.Write(monUri.Tostring());



Merci à Julien Adam

Créé le 6 novembre 2003  par David Pedehourcq

Un petit bout de code trés simple qui affiche l'url de la page appelante.

 
Sélectionnez
string str;
str = Request.ServerVariables["HTTP_REFERER"];
Response.Write(str);



Attention lors des postback, la page appelante est la page en cours !

Créé le 18 février 2004  par David Pedehourcq

Lien : Comment détecter le navigateur d'un visiteur ?
Lien : Comment détecter le langage du navigateur d'un visiteur ?
Lien : Comment récupérer l'adresse ip d'un visiteur ?

Nous allons voir ici comment récupérer l'url complète (avec les paramètres) de la page sur laquelle on se trouve. L'url absolue s'obtient par:

 
Sélectionnez
string urlAbsolue = Request.Url.ToString();

tandis que l'url relative est récupérée par:

 
Sélectionnez
string urlRelative = Request.RawUrl;
Mis à jour le 23 mai 2005  par David Pedehourcq

Lorsqu'une adresse n'existe pas ou que la page ne peut être affichée pour quelque raison que ce soit, le serveur d'application Web (quelqu'il soit également) renvoie un numéro d'erreur.
La fonction ci-dessous envoie false si une exception est lancée lors de la "lecture" de la page.
On remarquera que le même test est présent dans le catch car certains serveurs font une différence entre "http://site/rep" et "http://site/rep/".

 
Sélectionnez
public static bool UrlIsValid(string Host)
{
	HttpWebRequest oRequest = null;
	HttpWebResponse oResponse = null;
	try
	{
		oRequest = (HttpWebRequest) WebRequest.Create(BuildUrl(Host));
		oResponse = (HttpWebResponse)oRequest.GetResponse();
		return true;
	}
	catch (Exception)
	{
		try
		{
			oRequest = (HttpWebRequest) WebRequest.Create(BuildUrl(Host)+"\\");
			oResponse = (HttpWebResponse)oRequest.GetResponse();
			return true;
		}
		catch (Exception)
		{
			return false;
		}
	}
}

BuildUrl permet d'ajouter le "http://" si celui-ci n'a pas été précisé dans l'Url.

 
Sélectionnez
public static string BuildUrl(string Url)
{
	if (Url.StartsWith("http://"))
		return Url;
	return Url.Insert(0, "http://");
}
Créé le 23 mai 2005  par Didier Danse
 
Sélectionnez
if ( Request.IsSecureConnection )
	Debug.WriteLine("Connexion sécurisée");
else
	Debug.WriteLine("Connexion non sécurisée");
Créé le 29 mai 2006  par Didier Danse

Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2007 Dotnet Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site ni de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.