Как через JS проверить что пользователь пользуется встроенным браузером?

В JavaScript есть несколько способов проверить, используется ли пользователем встроенный браузер или нет. Один из таких способов - это проверить User Agent (User-Agent) строки.

User Agent - это информация, которую браузер отправляет на сервер в заголовке HTTP-запроса, чтобы сервер мог определить, с какого браузера и операционной системы пользователь делает запрос.

Чтобы проверить, использует ли пользователь встроенный браузер, вы можете получить User Agent строку через navigator.userAgent. Затем вы можете использовать регулярное выражение или условия if-else для сопоставления с привычными User Agent строками встроенных браузеров.

Для примера, давайте посмотрим, как можно проверить, использует ли пользователь встроенный браузер мобильного устройства:

const isNativeBrowser = () => {
  const userAgent = navigator.userAgent;
  
  const mobileBrowsers = [
    /Mobile Safari/i, // Safari на iOS
    /Android.*Version/d+(.d+)+.*Mobile.*Safari/i // Android браузер
  ];
  
  return mobileBrowsers.some(regex => regex.test(userAgent));
};

console.log(isNativeBrowser()); // true если пользователь использует встроенный браузер мобильного устройства

В этом примере мы используем функцию isNativeBrowser(), которая будет возвращать true, если User Agent строки соответствуют привычным User Agent строкам мобильных браузеров (например, Safari на iOS или Android браузер).

Обратите внимание, что User Agent строки могут быть изменены или поддельными, поэтому это не гарантирует 100% достоверность. Однако, в большинстве случаев, эта проверка будет довольно точной.