کامپوننت Browser Capabilities ASP

مثال

کامپوننت قابلیت‌های مرورگر ASP
این مثال نشان می‌دهد که چگونه می‌توان نوع، عملکرد و نسخه مرورگر هر بازدیدکننده‌ای که به وب‌سایت می‌آید را تعیین کرد.

کامپوننت Browser Capabilities ASP

کامپوننت ASP Browser Capabilities یک شیء BrowserType ایجاد می‌کند، که می‌تواند نوع، عملکرد و نسخه مرورگر بازدیدکننده را تعیین کند.

وقتی مرورگر به سرور متصل می‌شود، یک سربرگ HTTP User Agent به سرور ارسال می‌کند. این سربرگ شامل اطلاعات مربوط به مرورگر است (مثلاً نوع و نسخه مرورگر). شیء BrowserType اطلاعات موجود در سربرگ را با اطلاعات موجود در فایل "Browscap.ini" روی سرور مقایسه می‌کند.

اگر نوع و نسخه مرورگر ارسالی در عنوان با اطلاعات موجود در فایل "Browsercap.ini" مطابقت داشته باشد، می‌توانیم از شیء BrowserType برای لیست کردن ویژگی‌های مرتبط با این مرورگر استفاده کنیم. اگر این شرایط مطابقت نداشته باشد، این شیء هر ویژگی را به "UNKNOWN" تنظیم خواهد کرد.

زبان برنامه‌نویسی

<%
Set MyBrow=Server.CreateObject("MSWC.BrowserType") 
%>

مثال زیر به ایجاد یک شیء BrowserType در یک فایل ASP و نمایش یک جدول نمایش دهنده عملکرد مرورگر فعلی می‌پردازد:

<html>
<body>
<%
Set MyBrow=Server.CreateObject("MSWC.BrowserType")
%>
<table border="1" width="100%">
<tr>
<th>سیستم‌عامل مشتری</th>
<th><%=MyBrow.platform%></th>
</tr><tr>
<td >مرورگر وب</td>
<td ><%=MyBrow.browser%></td>
</tr><tr>
<td>نسخه مرورگر</td>
<td><%=MyBrow.version%></td>
</tr><tr>
<td>پشتیبانی از فریم؟</td>
<td><%=MyBrow.frames%></td>
</tr><tr>
<td>پشتیبانی از جدول؟</td>
<td><%=MyBrow.tables%></td>
</tr><tr>
<td>پشتیبانی از Sound?</td>
<td><%=MyBrow.backgroundsounds%></td>
</tr><tr>
<td>پشتیبانی از Cookies?</td>
<td><%=MyBrow.cookies%></td>
</tr><tr>
<td>پشتیبانی از VBScript?</td>
<td><%=MyBrow.vbscript%></td>
</tr><tr>
<td>پشتیبانی از JavaScript?</td>
<td><%=MyBrow.javascript%></td>
</tr>
</table>
</body>
</html>

خروجی:

نظام کاربری WinNT
مرورگر وب IE
نسخه مرورگر 5.0
پشتیبانی از Frame? True
پشتیبانی از Table? True
پشتیبانی از Sound? True
پشتیبانی از Cookies? True
پشتیبانی از VBScript? True
پشتیبانی از JavaScript? True

فایل Browscap.ini

فایل "Browsercap.ini" برای تعریف ویژگی‌ها و تنظیم مقادیر پیش‌فرض برای هر مرورگر استفاده می‌شود.

این بخش شامل آموزش نحوه استفاده از فایل Browscap.ini نیست، ما تنها اطلاعات پایه و مفاهیم اولیه درباره "Browsercap.ini" را ارائه می‌دهیم.

فایل "Browsercap.ini" می‌تواند شامل اطلاعات زیر باشد:

[;comments]
[HTTPUserAgentHeader] 
[parent=browserDefinition]
[property1=value1]
[propertyN=valueN] 
[تنظیمات ظرفیت مرورگر پیش‌فرض]
[defaultProperty1=defaultValue1]
[defaultPropertyN=defaultValueN] 
پارامترها توضیحات
comments اختیاری است. هر خط کد که با semicolon (پونز) شروع می‌شود توسط BrowserType نادیده گرفته می‌شود
HTTPUserAgentHeader اختیاری است. عنوان گزارش کاربر HTTP Agent مرتبط با مقدار browser-property تعیین شده در propertyN را تعریف می‌کند. استفاده از کاراکتر عمومی مجاز است.
browserDefinition اختیاری. تعیین سربرگ HTTP User Agent header-string به عنوان مرورگر پدر استفاده شده. تعریف مرورگر فعلی از تمام مقادیر تعریف شده در تعریف مرورگر پدر ارث می‌برد.
propertyN اختیاری. تعیین ویژگی مرورگر. جدول زیر برخی از ویژگی‌های ممکن را نشان می‌دهد:
  • ActiveXControls - آیا کنترل‌های ActiveX پشتیبانی می‌کنند؟
  • Backgroundsounds - آیا صدای پس‌زمینه پشتیبانی می‌کند؟
  • Cdf - آیا فرمت تعریف کانال (Channel Definition Format) برای پخش‌های اینترنتی (Webcasting) پشتیبانی می‌کند؟
  • Tables - آیا جدول‌ها پشتیبانی می‌کنند؟
  • Cookies - آیا کوکی‌ها پشتیبانی می‌کنند؟
  • Frames - آیا فریم‌ها پشتیبانی می‌کنند؟
  • Javaapplets - آیا Java applets پشتیبانی می‌کند؟
  • Javascript - آیا JScript پشتیبانی می‌کند؟
  • Vbscript - آیا VBScript پشتیبانی می‌کند؟
  • Browser - نام مرورگر را تعریف می‌کند
  • Beta - آیا مرورگر نرم‌افزار بتا است؟
  • Platform - تعیین پلتفرمی که مرورگر در آن اجرا می‌شود
  • Version - تعیین شماره نسخه مرورگر.
valueN اختیاری. تعیین مقدار propertyN. می‌تواند یک رشته، عدد (پیشوند #) یا مقدار منطقی باشد.
defaultPropertyN اختیاری. تعیین نام ویژگی مرورگر، اگر هیچ یک از مقادیر تعریف شده در HTTPUserAgentHeader با سربرگ HTTP کاربر مرورگر مطابقت ندارد، این ویژگی یک مقدار پیش‌فرض برای این ویژگی اختصاص می‌یابد.
defaultValueN اختیاری. تعیین مقدار defaultPropertyN. می‌تواند یک رشته، عدد (پیشوند #) یا مقدار منطقی باشد.

"Browsercap.ini" فایل به این شکل خواهد بود:

;IE 5.0
[IE 5.0]
browser=IE
Version=5.0
majorver=#5
minorver=#0
frames=TRUE
tables=TRUE
cookies=TRUE
backgroundsounds=TRUE
vbscript=TRUE
javascript=TRUE
javaapplets=TRUE
ActiveXControls=TRUE
beta=False;DEFAULT BROWSER
[*]
browser=Default
frames=FALSE 
tables=TRUE 
cookies=FALSE 
backgroundsounds=FALSE 
vbscript=FALSE 
javascript=FALSE