Bonjour à tous,
Je souhaiterai détecter la langue courante du navigateur employé, ceci en VB.Net.
Existe-t'il une solution ?
Merci et à bientôt.
Version imprimable
Bonjour à tous,
Je souhaiterai détecter la langue courante du navigateur employé, ceci en VB.Net.
Existe-t'il une solution ?
Merci et à bientôt.
Avec un truc comme ça, ça devrait le faire...
EDIT: en fait il y a mieux : la propriété UserLanguages renvoie un tableau des langues acceptées par le client :Code:Dim langue As String = Request("HTTP_ACCEPT_LANGUAGE")
Code:Dim langue As String = Request.UserLanguages(0)
Merci pour ta réponse, j'ai utilisé le second après recherche sur le Web...
Je ne peux pas encore vous dire si cela marche, car je bute sur un pb en amont.
Je n'arrive pas à tester si un cookie existe bien, ou si il est égal à une valeur.
Quelqu'un peut-il m'aider dans cette quête ?
Merci et à bientôt.
Alors pour voir si les cookies sont acceptés, personnellement j'ai testé de cette manière :
En fait tu crée en cookie provisoire afin de tester si l'utilisateur l'a accepté ou non. Es-ce que cela te convient ?Code:
1
2
3
4
5
6
7
8
9
10 '++ To know if cookies are accepted Dim AcceptCookies As Boolean Response.Cookies("TestCookie").Value = "Test cookies" If (Request.Cookies("TestCookie") Is Nothing) Then AcceptCookies = False Else AcceptCookies = True Response.Cookies("TestCookie").Expires = DateTime.Now End If
Merci, j'ai utilisé quelque chose d'assez semblable...
Par contre, on ne crée pas de cookie temporaire, on vérifie juste si il existe (nothing).
Grosso modo, voilà ce que j'ai pour un module de redirection de page, avec sauvegarde par cookie :
A bientôt.Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41 Dim language As String = Request.UserLanguages(0) ' Récupération de la langue du portail. Select Case Me.PortalId() Case 0 country = "TabsFrId" Case 1 country = "TabsUkId" Case 2 country = "TabsDeId" Case 3 country = "TabsEsId" End Select 'Récupération de la langue du navigateur. Select Case language.Substring(0, 2) Case "fr" country_dest = "TabsFrId" Case "en" country_dest = "TabsUkId" Case "de" country_dest = "TabsDeId" Case "es" country_dest = "TabsEsId" Case Else country_dest = "TabsUkId" End Select If Request.Cookies("redirect") Is Nothing Then Dim cookieRedirect As New HttpCookie("redirect") cookieRedirect.Value = 1 Response.Cookies.Add(cookieRedirect) If Request.Cookies("langue") Is Nothing Then Dim cookieLangue As New HttpCookie("langue") cookieLangue.Value = language.Substring(0, 2) Response.Cookies.Add(cookieLangue) End If 'Execution de la redirection. Try