توسط این ویژگی می توان از نوع ، توانائیهاو نسخه مرورگر کاربر اگاهی یافت

روش کار اینه که :

فایلی به نام Browscap.ini در سرور قرار داره در اون ویژگیهای متنوع مرورگرها و مقدار هر ویژگی  قرار داره .

تقاضایی توسط شی BrowserType   از طرف صفحه وبی که کاربر در حال مشاهده اون هست به سرور ارسال میشه تا ویژگیها و قابلیت های اون مرورگر به کاربر اطلاع داده بشه . در صورتیکه نوع مرورگر کاربر در این فایل باشه مقادیر ویژگیهای متنوع ان  از فایل استخراج میشه و برای  کاربر نشون داده میشه.

 

حالا با روش کار اشنا می شیم

 

زمانیکه مرورگری به سرور متصل می شود ، یک هدر User Agent هم به سرور ارسال می شود ، که این هدر در بر دارنده اطلاعا تی مربوط به ان مرورگر است 
 شی BrowserType  اطاعات درون هدر را با اطلاعات درون فایل Browscap.ini مقایسه می کند . محل این فایل در سرور است
 اگر  بین نوع و شماره نسخه مرورگر کاربر که توسط هدر به سرور رسیده است و انچه در فایل Browscap.ini وجود دارد ، تطابق وجود داشته باشد  انگاه می توان از شی BrowserType  برای لیست کردن و دسترسی به  ویژگیهای مرورگر استفاده کرد
 
 اما در صورت عدم تطابق نوع و نسخه مرورگر کاربر با هیچیک از اطلاعات موجود در فایل Browscap.ini ، این شی مقدار تمام ویژگیها ی مرورگر را با UNKNOWN مقدار می دهد
 
 روش استفاده :

 

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

 MyBrow را از نوع شی BrowserType تعریف کرده ایم 

 مثالی برای Browser Capabilities :

 

 

 مثال زیر شی ای از نوع BrowserType  در فایل ASP  ایجاد می کند و تعدادی از قابیتهای مرورگر شما را نشان می دهد

 

notepad را باز کنید ، دستورات این مثال را در فایل با نام دلخواه و با پسوند Asp کپی کنید البته فایل باید در پوشه مربوط به iis ذخیره شود

انرا اجرا کنید ( یک بار با مرورگر ie و بار دیگه با مثلا مرورگر فایر فاکس - نتیجه را با هم مقایسه نمائید )

 

 

<!DOCTYPE html>
<html>
<body>
<%
Set MyBrow=Server.CreateObject("MSWC.BrowserType")
%>

<table border="0" width="100%">
<tr>
<th>Client OS</th><th><%=MyBrow.platform%></th>
</tr><tr>
<td >Web Browser</td><td ><%=MyBrow.browser%></td>
</tr><tr>
<td>Browser version</td><td><%=MyBrow.version%></td>
</tr><tr>
<td>Frame support?</td><td><%=MyBrow.frames%></td>
</tr><tr>
<td>Table support?</td><td><%=MyBrow.tables%></td>
</tr><tr>
<td>Sound support?</td><td><%=MyBrow.backgroundsounds%></td>
</tr><tr>
<td>Cookies support?</td><td><%=MyBrow.cookies%></td>
</tr><tr>
<td>VBScript support?</td><td><%=MyBrow.vbscript%></td>
</tr><tr>
<td>JavaScript support?</td><td><%=MyBrow.javascript%></td>
</tr>
</table>

</body>
</html>

توضیحات :

 

 خط قرمز رنگ :

MyBrow را از نوع  شی BrowserType تعریف می کند . همین تعریف یعنی اتصال به سرور ، ارسال نوع و نسخه مرورگر به سرور ،

سپس تطابق نوع و نسخه مرورگر با انواع مدلهای مرورگرهای تعریف شده در فایل Browscap.ini در سرور انجام می شود 

سپس در صورت پیدا شدن مدل مرورگر کاربر در فایل Browscap.ini

سپس ارسال مقادیر ویژگیهای ان مرورگر به کاربر 

سپس قرار گیری  مقدار و نام ان ویژگیها  در MyBrow

 

 

خطهای ابی رنگ :

ویژگیهای مرورگر کاربر  و مقادیر انها را در خانه های جدول نمایش می دهد . به روش دسترسی به این ویژگیها توجه کنید که چگونه از MyBrow استفاده شده است

 خروجی برنامه بالا:

 

Client OSWinNT
Web Browser IE
Browser version 5.0
Frame support? True
Table support? True
Sound support? True
Cookies support? True
VBScript support? True
JavaScript support? True
 
 مشاهده و اجرای برنامه کامل
 
 فایل Browscap.ini چیست :
 
در این فایل که محل ان سرور است ، مشخصات و قابلیتهای مرورگرها قرار دارد .

قصد ما توضیح کامل این فایل نیست بلکه فقط اشنایی کلی با ان است . 

این فایل می تواند شامل موارد زیر باشد :

 

[;comments]
[HTTPUserAgentHeader]
[parent=browserDefinition]
[property1=value1]
[propertyN=valueN]
[Default Browser Capability Settings]
[defaultProperty1=defaultValue1]
[defaultPropertyN=defaultValueN]

 
 اشنایی با پارامترها :

 

پارامترتوضیحات
comments

استفاده از این پارامتر اختیاری است - توضیحات اضافی است .

هر خطی که با سمی کولن اغاز شود توسط شی BrowserType مردود  شناخته می شود و بررسی نمی شود

HTTPUserAgentHeader

استفاده از این پارامتر اختیاری است - هدر HTTP User Agent را که از طرف مرورگر کاربر برای سرور ارسال می شود را مشخص می کند یعنی چیزی شبیه هدری که ممکن است از طرف مرورگر کاربر به سرور برسد می باشد . درون فایل زیر این قسمت ویژگیها و مقدار انها که مربوط به ان مرورگر می شود لیست می شوند . این ویژگیها را در بخش propertyN  خواهیم گفت .  استفاده می شود استفاده از کاراکترهای Wildcard  مجاز است .

 

browserDefinition

استفاده از این پارامتر اختیاری است - مقادیر زیر هدر تعریف شده بعنوان ویژگیهای مرورگر کاربر در نظر گرفته می شوند

 

propertyN

استفاده از این پارامتر اختیاری است - ویژگیهای مرورگر را مشخص می کند .

در فهرست زیر برخی از این ویژگیها را مشاهده می کنید :

 

  • ActiveXControls - مشخص می کند ایا مرورگر از کنترلهای اکتیو ایکس پشتیبانی می کند
  • Backgroundsounds - مشخص می کند ایا مرورگر از صداهای زمینه پشتیبانی می کند
  • Cdf -مشخص می کند ایا مرورگر از کانالهای تعریف شده برای فرمت های پخش   پشتیبانی می کند
  • Tables - مشخص می کند ایا مرورگر از جدول ها پشتیبانی می کند
  • Cookies -مشخص می کند ایا مرورگر از کوکی ها پشتیبانی می کند
  • Frames - مشخص می کند ایا مرورگر از فریم ها پشتیبانی می کند
  • Javaapplets -مشخص می کند ایا مرورگر از اپلت های جاوا پشتیبانی می کند
  • Javascript - مشخص می کند ایا مرورگر از جاوا اسکریپت پشتیبانی می کند
  • Vbscript - مشخص می کند ایا مرورگر از ویژوال بیسیک پشتیبانی می کند
  • Browser - نام مرورگر را مشخص می کند 
  • Beta - ایا مرورگر نرم افزار نسخه بتا است ?
  • Platform - پلت فرمی که مرورگر بر اساس ان اجرا شده را بیان می کند
  • Version - بیانگر نسخه مرورگر است
valueN

استفاده از این پارامتر اختیاری است - مقدار ویژگیهای قسمت  propertyN را مشخص می کند . می تواند یا یک رشته باشد ،  یا یک مقدار صحیح integer  که پسوند این مقدار باید # باشد ،  یا اینکه می تواند مقداری بولین باشد

 

defaultPropertyN

 

در صورتیکه هیچ یک از مقادیر تعریف شده HTTPUserAgentHeader  با هدر ارسال شده از طرف مرورگر تطبیق نداشته باشد ، مقادیر پیش فرض این قسمت بعنوان ویژگیهای مرورگر در نظر گرفته می شود

defaultValueN

استفاده از این پارامتر اختیاری است - مقدار defaultPropertyN را مشخص می کند  . می تواند یا یک رشته باشد ،  یا یک مقدار صحیح integer  که پسوند این مقدار باید # باشد ،  یا اینکه می تواند مقداری بولین باشد

 

 
 یک فایل Browscap.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

  [*]:

یعنی هر مرورگر دیگری ب جز ie 5 اگر بود ویژگیهایش ان چیزی است که زیران لیست شده است