پرش به محتوا

کتابخانه

دانلود ua-parser-js و نشانی CDN ایرانی

ua-parser-js یه کتابخانه جاوااسکریپت برای تشخیص مرورگر، موتور رندر، سیستم عامل، پردازنده و نوع و مدل دستگاه از روی User-Agent و داده های Client Hints هست. هم توی مرورگر کار می کنه هم توی Node.js. برای آمار بازدید، پیام برای مرورگرهای قدیمی و رفتار متفاوت روی موبایل به درد می خوره.

نسخه رسمی و بدون تغییر، از منبع رسمی با مجوز AGPL-3.0-or-later؛ هش هر فایل با منبع بررسی شده است.

آخرین نسخه
۱.۰.۴۱
نسخه‌ها در مخزن
۱۰
مجوز
AGPL-3.0-or-later
سازنده
Faisal Salman
آخرین بررسی
آخرین به‌روزرسانی
توضیحات

آخرین نسخه

آخرین نسخه ۱.۰.۴۱ آخرین

۱۰۷ کیلوبایت· ۷ فایل· انتشار

دانلود
نشانی مستقیم فایل اصلی https://mirror.wbweb.ir/npm/ua-parser-js@1.0.41/dist/ua-parser.min.js
کد آماده با SRI <script src="https://mirror.wbweb.ir/npm/ua-parser-js@1.0.41/dist/ua-parser.min.js" integrity="sha256-UGRi9UXrgQGSqgzSb9iA1yNMYtCHiWnMB5mBSB2fouo=" crossorigin="anonymous"></script>

SHA-256: 506462f545eb810192aa0cd26fd880d7234c62d0878969cc079981481d9fa2ea

درباره ua-parser-js (یو ای پارسر جی اس)

ua-parser-js رشته User-Agent مرورگر رو می گیره و بهش ساختار می ده: اسم مرورگر، موتور رندر، سیستم عامل، معماری پردازنده، نوع و مدل دستگاه. خود User-Agent یه متن بلند و درهم برهمه و نوشتن Regex دستی برای همه ترکیب هاش دردسر داره. این کتابخانه اون زحمت رو برمی داره و نتیجه رو توی یه شیء مرتب تحویلت می ده. از Client Hints هم پشتیبانی می کنه و هم توی مرورگر کار می کنه هم توی Node.js.

کاربردهاش ساده و ملموسه. فرض کن یه فروشگاه اینترنتی داری و می خوای بدونی بازدیدکننده هات بیشتر با اندروید میان یا آیفون. یا می خوای به کسی که با یه مرورگر خیلی قدیمی اومده، پیام «مرورگرت رو به روز کن» نشون بدی. یا توی سرور Node.js می خوای لاگ درخواست ها رو بر اساس نوع دستگاه دسته بندی کنی. تو همه این موارد کتابخانه فقط اطلاعات رو بهت می ده و تصمیمش با خودته.

قبل از انتخابش چند نکته رو جدی بگیر. User-Agent رو هر کسی می تونه تغییر بده، پس هیچ تصمیم امنیتی رو روش بنا نکن. اگه می خوای بدونی مرورگر یه قابلیت رو داره یا نه، تشخیص قابلیت (feature detection) راه درست تره، نه حدس زدن از روی اسم مرورگر. یه نکته دیگه هم اینه که مرورگرهای مبتنی بر کرومیوم چند ساله جزئیات User-Agent رو کم کردن و اطلاعات دقیق تر رو از راه Client Hints می دن. این اطلاعات معمولا فقط توی زمینه امن (HTTPS) در دسترسه. پس اگه سایتت هنوز روی HTTP هست، انتظار نتیجه کامل نداشته باش.

نکته آخر مجوزه. مجوز این بسته بین نسخه ها فرق کرده و نسخه های تازه تر با AGPL منتشر می شن، مجوزی که برای سرویس های تحت شبکه شرط های مشخصی داره. اگه قراره توی محصول تجاری یا قالب و افزونه فروشی ازش استفاده کنی، قبل از شروع متن مجوز همون نسخه ای که برمی داری رو بخون و اگه لازم شد با سازنده یا یه مشاور حقوقی مشورت کن. نسخه های رسمی و بدون تغییر ua-parser-js توی مخزن داخلی ما هم در دسترسه، برای روزهایی که دسترسی به npm یا سرورهای خارجی مشکل داره.

راهنمای استفاده

برای استفاده توی یه صفحه معمولی یا قالب وردپرسی، فایل رو با کد آماده پایین همین صفحه به سایتت اضافه کن. بعدش این مراحل رو جلو ببر:

  • اسکریپت رو قبل از کدی که ازش استفاده می کنه لود کن. توی وردپرس بهتره با wp_enqueue_script ثبتش کنی و دستی توی هدر نچسبونیش.
  • یه نمونه از UAParser بساز. اگه چیزی بهش ندی، خودش User-Agent مرورگر فعلی رو برمی داره.
  • متد getResult رو صدا بزن. یه شیء می گیری که browser، engine، os، cpu و device داره. اگه فقط یه بخش می خوای، getBrowser، getOS و متدهای مشابه هم هست.
  • سمت Node.js بسته رو با npm به اسم ua-parser-js نصب کن و مقدار هدر User-Agent درخواست رو بهش بده.
  • اگه Client Hints هم لازم داری، مستندات همون نسخه ای که برداشتی رو نگاه کن. ممکنه فعال کردنش جدا باشه و نتیجه دیرتر برسه.
  • برای مقدارهای خالی یه حالت پیش فرض بذار. بعضی فیلدها، مخصوصا device روی دسکتاپ، ممکنه پر نشن.
  • قبل از انتشار روی چند مرورگر و موبایل واقعی امتحانش کن.

اگه سایتت کش سنگین داره، حواست باشه صفحه ای که بر اساس نوع دستگاه تغییر می کنه برای همه کاربرها یکسان کش نشه.

همه نسخه‌ها (۱۰)

نسخه‌های ۱.x ۶ نسخه
  • ۱.۰.۴۱ آخرین نسخه ۱۰۷ کیلوبایت·
    دانلودنسخه 1.0.41
    نشانی مستقیم فایل اصلی 1.0.41 https://mirror.wbweb.ir/npm/ua-parser-js@1.0.41/dist/ua-parser.min.js
  • ۱.۰.۴۰ ۱۰۱ کیلوبایت·
    دانلودنسخه 1.0.40
    نشانی مستقیم فایل اصلی 1.0.40 https://mirror.wbweb.ir/npm/ua-parser-js@1.0.40/dist/ua-parser.min.js
  • ۱.۰.۳۹ ۹۸ کیلوبایت·
    دانلودنسخه 1.0.39
    نشانی مستقیم فایل اصلی 1.0.39 https://mirror.wbweb.ir/npm/ua-parser-js@1.0.39/dist/ua-parser.min.js
  • ۱.۰.۳۸ ۹۶ کیلوبایت·
    دانلودنسخه 1.0.38
    نشانی مستقیم فایل اصلی 1.0.38 https://mirror.wbweb.ir/npm/ua-parser-js@1.0.38/dist/ua-parser.min.js
  • ۱.۰.۳۷ ۹۵ کیلوبایت·
    دانلودنسخه 1.0.37
    نشانی مستقیم فایل اصلی 1.0.37 https://mirror.wbweb.ir/npm/ua-parser-js@1.0.37/dist/ua-parser.min.js
  • ۱.۰.۳۵ ۹۳ کیلوبایت·
    دانلودنسخه 1.0.35
    نشانی مستقیم فایل اصلی 1.0.35 https://mirror.wbweb.ir/npm/ua-parser-js@1.0.35/dist/ua-parser.min.js
نسخه‌های ۰.x ۴ نسخه
  • ۰.۷.۴۱ ۱۰۷ کیلوبایت·
    دانلودنسخه 0.7.41
    نشانی مستقیم فایل اصلی 0.7.41 https://mirror.wbweb.ir/npm/ua-parser-js@0.7.41/dist/ua-parser.min.js
  • ۰.۷.۴۰ ۱۰۱ کیلوبایت·
    دانلودنسخه 0.7.40
    نشانی مستقیم فایل اصلی 0.7.40 https://mirror.wbweb.ir/npm/ua-parser-js@0.7.40/dist/ua-parser.min.js
  • ۰.۷.۳۹ ۹۸ کیلوبایت·
    دانلودنسخه 0.7.39
    نشانی مستقیم فایل اصلی 0.7.39 https://mirror.wbweb.ir/npm/ua-parser-js@0.7.39/dist/ua-parser.min.js
  • ۰.۷.۳۸ قدیمی‌ترین نسخه ۹۶ کیلوبایت·
    دانلودنسخه 0.7.38
    نشانی مستقیم فایل اصلی 0.7.38 https://mirror.wbweb.ir/npm/ua-parser-js@0.7.38/dist/ua-parser.min.js

پرسش‌های رایج

  • اسم و نسخه مرورگر، موتور رندر، سیستم عامل، معماری پردازنده و نوع و مدل دستگاه رو از User-Agent یا Client Hints درمیاره. دقتش به چیزی که مرورگر می فرسته بستگی داره و همه فیلدها همیشه پر نمی شن، مخصوصا مدل دستگاه.

  • آره، چون یه کتابخانه جاوااسکریپته و به وردپرس وابسته نیست. فایلش رو توی قالب یا افزونه خودت با wp_enqueue_script لود کن و بعد توی اسکریپت خودت صداش بزن. اگه تشخیص سمت سرور می خوای، اون رو جداگانه توی PHP یا Node.js انجام بده.

  • ua-parser-js می گه کاربر با چه مرورگر و دستگاهی اومده، ولی تشخیص قابلیت می گه مرورگر یه ویژگی مشخص رو داره یا نه. برای اینکه بفهمی یه API کار می کنه، تشخیص قابلیت قابل اعتمادتره. برای آمار و گزارش گیری، ua-parser-js مناسب تره.

  • مجوز AGPL شرط های مشخصی داره، مخصوصا وقتی نرم افزار از راه شبکه به کاربرها سرویس می ده. مجوز هم بین نسخه ها فرق کرده. قبل از استفاده توی محصول تجاری متن مجوز نسخه خودت رو بخون و اگه مطمئن نبودی، با سازنده یا یه مشاور حقوقی مشورت کن.

  • مرورگرها، مخصوصا کرومیوم، عمدا جزئیات User-Agent رو کم کردن. اطلاعات دقیق تر فقط از راه Client Hints و معمولا روی HTTPS در دسترسه. پس اگه سایتت امن نیست یا مرورگر اون داده رو نفرسته، نتیجه کلی تر می شه.

چیزی که لازم دارید اینجا نیست؟

نام کتابخانه، افزونه یا قالب را بفرستید؛ پس از بررسی، نسخه‌های رسمی آن به مخزن اضافه می‌شود.