Генератор на произволни потребителски агенти за тестване на уеб разработки

Генерирайте реалистични низове на потребителски агенти на браузъри с опции за филтриране по тип устройство, браузърска фамилия и операционна система. Перфектно за тестване на уеб разработки и проверки на съвместимост.

Генератор на случайни потребителски агенти

Генерирайте случайни, реалистични низове на браузърски потребителски агенти за тестване на уеб разработка.

Генериран потребителски агент

Копирай
📚

Документация

Генератор на случайни User Agent-и

Въведение

Стрингът на User Agent е специфичен текстов идентификатор, който уеб браузърите и други приложения изпращат на уебсайтове, за да се идентифицират. Този стринг обикновено съдържа информация за браузъра, операционната система, типа устройство и рендериращия двигател, който се използва. За уеб разработчиците и тестерите, достъпът до разнообразие от реалистични стрингове на User Agent е съществен за тестване на съвместимостта, отзивчивостта и функционалността на уебсайтовете на различни платформи.

Този инструмент за генерация на случайни User Agent-и създава автентични изглеждащи стрингове на User Agent на базата на избраните от вас параметри. Можете да филтрирате по тип устройство (десктоп или мобилен), семейство браузъри (Chrome, Firefox, Safari или Edge) и операционна система, за да генерирате User Agent-и, които отговарят на вашите изисквания за тестване. Инструментът предоставя прост интерфейс с опции за копиране на генерирания стринг с едно кликване и незабавно генериране на нови случайни стрингове.

Структура на User Agent

Стрингът на User Agent следва специфични модели в зависимост от браузъра и платформата, но обикновено съдържа няколко общи компонента:

  1. Идентификатор на браузъра: Обикновено започва с "Mozilla/5.0" по исторически причини за съвместимост
  2. Информация за платформата/ОС: Подробности за операционната система (Windows, macOS, Android, iOS)
  3. Двигател на браузъра: Рендериращият двигател (като Gecko, WebKit или Blink)
  4. Детайли за браузъра: Специфичното име и версия на браузъра

Ето разбивка на типичните структури на User Agent за основните браузъри:

Chrome

1Mozilla/5.0 (platform; details) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/version Safari/537.36
2

Firefox

1Mozilla/5.0 (platform; rv:geckoversion) Gecko/geckotrail Firefox/firefoxversion
2

Safari

1Mozilla/5.0 (platform) AppleWebKit/webkitversion (KHTML, like Gecko) Version/safariversion Safari/safariversion
2

Edge

1Mozilla/5.0 (platform) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/chromiumversion Safari/537.36 Edg/edgeversion
2

Секцията за платформата варира значително между десктоп и мобилни устройства:

Примери за десктоп:

  • Windows: Windows NT 10.0; Win64; x64
  • macOS: Macintosh; Intel Mac OS X 10_15_7
  • Linux: X11; Linux x86_64

Примери за мобилни устройства:

  • Android: Linux; Android 12; SM-G998B
  • iOS: iPhone; CPU iPhone OS 15_4 like Mac OS X

Разлики в типовете устройства

Десктоп User Agents

Десктоп User Agent-ите обикновено включват специфична информация за операционната система, детайли за архитектурата (като x86_64 или Win64) и понякога предпочитания за език. Те обикновено са по-консистентни между браузърите, отколкото мобилните User Agent-и.

Мобилни User Agents

Мобилните User Agent-и съдържат информация за модела на устройството, версии на мобилната операционна система и често включват думата "Mobile" в края. Мобилният Safari на iOS устройства ще включва идентификатори "iPhone" или "iPad", докато Android устройствата включват производителя и номера на модела.

Шаблони за версии на браузъра

Всеки браузър следва различни шаблони за версиите:

  • Chrome: Използва четиричастни номера на версиите (например 96.0.4664.110)
  • Firefox: Обикновено използва двучастни или тричастни номера на версиите (например 95.0 или 95.0.2)
  • Safari: Използва прости номера на версиите като 15.2
  • Edge: Използва номера на версиите, подобни на Chrome, но с собствена версия на Edge (например 96.0.1054.62)

Сценарии на употреба

Генерирането на случайни User Agent-и има няколко важни приложения в уеб разработката и тестването:

  1. Тестване на съвместимост между браузъри: Тествайте как вашият уебсайт се визуализира и функционира на различни браузъри, без да е необходимо да инсталирате множество браузъри или да използвате множество устройства.

  2. Тестване на отзивчивия дизайн: Уверете се, че вашият уебсайт правилно разпознава мобилни и десктоп устройства и предоставя подходящия изглед.

  3. Валидиране на открития на функции: Уверете се, че механизмите за открития на функции на вашия уебсайт работят правилно за различни възможности на браузъра.

  4. QA и автоматизирано тестване: Включете различни User Agent-и в автоматизирани тестови скриптове, за да симулирате различни потребителски среди.

  5. Тестване на производителността: Анализирайте как вашият уебсайт се представя, когато се достъпва от различни браузърни среди.

  6. Отстраняване на проблеми, специфични за браузъра: Възпроизведете и поправете бъгове, които се появяват само в специфични браузъри или версии.

  7. Тестване на API: Тествайте как вашият API обработва заявки от различни клиентски приложения.

Алтернативи

Въпреки че нашият генератор на случайни User Agent-и е полезен за много сценарии на тестване, съществуват алтернативни подходи:

  1. Услуги за тестване на браузъри: Платформи като BrowserStack, Sauce Labs или LambdaTest предоставят действителни браузърни инстанции за тестване, а не просто симулиране на User Agent.

  2. Инструменти за разработчици на браузъри: Повечето съвременни браузъри позволяват да замените User Agent чрез инструментите за разработчици, което може да е полезно за бързи тестове.

  3. Разширения за смяна на User Agent: Разширения на браузъра, които ви позволяват да превключвате между предварително зададени User Agent-и, докато сърфирате.

  4. Виртуални машини или контейнери: Изпълняване на действителни инстанции на различни операционни системи и браузъри за най-точно тестване.

  5. Тестване с безглави браузъри: Използване на инструменти като Puppeteer или Selenium за програмирано управление на браузъри с различни настройки на User Agent.

Всяка алтернатива има свои предимства и може да бъде по-подходяща в зависимост от конкретните ви нужди и ресурси за тестване.

История

Концепцията за стринга на User Agent датира от ранните дни на Световната мрежа. Терминът "User Agent" произлиза от спецификацията на HTTP, където се отнася до клиентското приложение, което прави заявка до уеб сървър.

Ранни дни (1990-те)

Първият широко използван браузър, NCSA Mosaic, включваше прост стринг на User Agent, който идентифицираше името и версията на браузъра. Когато Netscape Navigator беше пуснат, той използваше подобен формат. Въпреки това, когато уеб сървърите започнаха да доставят различно съдържание в зависимост от браузъра, възникна практика, известна като "разпознаване на браузъра".

Войните на браузърите и подмяната на User Agent (Късните 1990-те)

По време на войните на браузърите между Netscape и Internet Explorer, уебсайтовете често предоставяха оптимизирано съдържание изключително за специфични браузъри. За да се осигури съвместимост, браузърите започнаха да включват стрингове, които се идентифицират като други браузъри. Затова повечето съвременни браузъри все още включват "Mozilla" в своите стрингове на User Agent, референция към кодовото име на Netscape Navigator.

Мобилна революция (2000-те - 2010-те)

Увеличаването на мобилните устройства въведе нова сложност в стринговете на User Agent. Мобилните браузъри трябваше да се идентифицират като мобилни, за да получават подходящо съдържание, което доведе до добавянето на идентификатори на устройства и мобилни специфични токени.

Съвременни предизвикателства (2010-те - Настояще)

С развитието на уеб екосистемата стринговете на User Agent станаха все по-сложни. Те сега съдържат референции към множество браузърни двигатели (като "AppleWebKit" и "Gecko") поради причини за съвместимост, дори когато тези двигатели не се използват.

Тази сложност доведе до предизвикателства при точното парсиране на стринговете на User Agent, а някои уеб стандартни групи предложиха да се депрецирова или опрости стрингът на User Agent в полза на по-структурирани клиентски подсказки. Въпреки това, поради причини за обратно съвместимост, традиционният стринг на User Agent остава съществена част от уеб сърфирането.

Примери за код

Ето примери за работа с стрингове на User Agent на различни програмни езици:

1// JavaScript: Откриване на типа браузър от стринг на User Agent
2function detectBrowser() {
3  const userAgent = navigator.userAgent;
4  
5  if (userAgent.indexOf("Firefox") > -1) {
6    return "Firefox";
7  } else if (userAgent.indexOf("SamsungBrowser") > -1) {
8    return "Samsung Browser";
9  } else if (userAgent.indexOf("Opera") > -1 || userAgent.indexOf("OPR") > -1) {
10    return "Opera";
11  } else if (userAgent.indexOf("Trident") > -1) {
12    return "Internet Explorer";
13  } else if (userAgent.indexOf("Edge") > -1) {
14    return "Edge";
15  } else if (userAgent.indexOf("Chrome") > -1) {
16    return "Chrome";
17  } else if (userAgent.indexOf("Safari") > -1) {
18    return "Safari";
19  } else {
20    return "Unknown";
21  }
22}
23
24// Използване
25console.log("Използвате: " + detectBrowser());
26

Чести шаблони на User Agent

Ето някои примери за реални стрингове на User Agent за различни браузъри и платформи:

Десктоп браузъри

Chrome на Windows:

1Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36
2

Firefox на macOS:

1Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:95.0) Gecko/20100101 Firefox/95.0
2

Safari на macOS:

1Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.2 Safari/605.1.15
2

Edge на Windows:

1Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36 Edg/96.0.1054.62
2

Мобилни браузъри

Chrome на Android:

1Mozilla/5.0 (Linux; Android 12; SM-G998B) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.104 Mobile Safari/537.36
2

Safari на iPhone:

1Mozilla/5.0 (iPhone; CPU iPhone OS 15_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.2 Mobile/15E148 Safari/604.1
2

Firefox на Android:

1Mozilla/5.0 (Android 12; Mobile; rv:95.0) Gecko/95.0 Firefox/95.0
2

Samsung Internet на Galaxy:

1Mozilla/5.0 (Linux; Android 12; SM-G998B) AppleWebKit/537.36 (KHTML, like Gecko) SamsungBrowser/16.0 Chrome/92.0.4515.166 Mobile Safari/537.36
2

Референции

  1. "User Agent." MDN Web Docs, Mozilla, https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/User-Agent

  2. "Browser User Agent Strings." WhatIsMyBrowser.com, https://www.whatismybrowser.com/guides/the-latest-user-agent/

  3. "HTTP User-Agent Header Explained." KeyCDN, https://www.keycdn.com/support/user-agent

  4. "Client Hints." MDN Web Docs, Mozilla, https://developer.mozilla.org/en-US/docs/Web/HTTP/Client_hints

  5. "History of the browser user-agent string." WebAIM, https://webaim.org/blog/user-agent-string-history/

  6. "Browser Detection Using the User Agent." Google Developers, https://developer.chrome.com/docs/multidevice/user-agent/

🔗

Свързани инструменти

Открийте още инструменти, които може да бъдат полезни за вашия работен процес

Генератор на произволни локации: Създаване на глобални координати

Изпробвайте този инструмент

Генератор на UUID за уникални идентификатори и приложения

Изпробвайте този инструмент

Генератор на имена за произволни проекти

Изпробвайте този инструмент

Генератор на произволни API ключове: Създайте сигурни 32-символни низове

Изпробвайте този инструмент

Генератор на уникални MongoDB ObjectID за разработка

Изпробвайте този инструмент

Генератор на уникални и сигурни Нано ID идентификатори

Изпробвайте този инструмент

Генератор на ЕГН за тестови цели и валидация на данни

Изпробвайте този инструмент

Генериране и анализ на инструмент за Twitter Snowflake ID за прозрения

Изпробвайте този инструмент

Инструмент за генериране и валидиране на IBAN за тестване и проверка

Изпробвайте този инструмент

Генератор на MD5 хешове

Изпробвайте този инструмент