|
| Web News |
French to limit violent net clips French people could be prevented from posting images or videos of violent acts online under new laws. Part of a new youth delinquency law targets "happy slapping"...
French film bible to go online in English The influential French film magazine Les Cahiers du Cinema is to get an English remake after almost 60 years in print.
The monthly review will this week launch...
Court blocks access to YouTube in Turkey A court in Turkey on Wednesday ordered blockage of all access to YouTube, the popular video-sharing Web site, over a video deemed insulting to Mustafa Kemal Ataturk, the founder of modern Turkey. The ban followed a...
Hacker steals election data from France's Le Pen A hacker stole sensitive data from a computer in the offices of French far-right leader Jean-Marie Le Pen, police said, fuelling his fears that rivals used it to try and...
Open-source CRM firm marches into Europe SugarCRM is opening an office in Dublin as part of a push into Europe. The open-source CRM vendor announced on Monday that Clint Oram, one of the co-founders of SugarCRM, would serve as general manager for Sugar...
|
 |
|
03.08.07 ASP.NET: Access Client Info Server-side By
Mads Kristensen
I was playing around with HTTP request headers and for some reason started thinking about how limited information they provide about the requesting browser.
All they really provide is the user agent string which provide very little information about the visitors platform, and that's about it. If they also provided screen resolution and available browser window real estate, it would start being useful for other scenarios than we are used to.
Then I started thinking about a way to provide ASP.NET web applications with data retrieved from the browser without interfering with the browsing experience. I found that the only way to get client information from JavaScript transferred to server-side variables is to do redirection, but that is not acceptable. Well, at least I thought. It is actually possible to do redirections without the browser registers it in its history so the back button would act as nothing happened.
This means that it should be possible to retrieve the information in a way that is totally transparent to the visitor. In other words, the website appear to act 100% as usual. If you don't believe me, read on and I'll tell you how it's done.
Try a Better Way Today.
Try WebEx MeetMeNow - Click
Here |
|
If it is using JavaScript to gather the information it also means that all information you can possibly retrieve from JavaScript can be transferred to the server. In this version I've implemented the properties you can see in the image above. It is very easy to add more. The code comments tells how.
How it works
To do the trick we need an HttpModule and HttpHandler. The module's job is to expose the client-side variables to the ASP.NET code while the HttpHandler fills them with data from the browser.
At every request to an .aspx page the module checks if the variables have been set for the requesting visitor. If the page is the first one the visitor hits, the module write a small JavaScript to the tag that collects the information we need and does a silent redirection to the HttpHandler. The handler registers the information sent from the JavaScript and stores it in session variables. Afterwards it redirects back to the original requested page without the visitor noticing any redirection has taken place.
Before you think it sounds too complex, let me assure you that it is very simple. Not only is it simple, it is also plug 'n play so you can easily implement it into any existing web application - no code required. I've tested it in IE 7, Firefox 2 and Opera 9 all on Windows and it works perfectly. This might be the coolest thing I've ever developed.
Continue reading this article.
About the Author: Mads Kristensen currently works as a Senior Developer at Traceworks located
in Copenhagen, Denmark. Mads graduated from Copenhagen Technical Academy with a multimedia degree in
2003, but has been a professional developer since 2000. His main focus is on ASP.NET but is responsible for Winforms, Windows- and
web services in his daily work as well. A true .NET developer with great passion for the simple solution.
http://www.madskristensen.dk/
|
|