वेब विकास चाचणीसाठी यादृच्छिक युजर एजंट जनरेटर
यंत्रणेसाठी यथार्थ ब्राउझर युजर एजंट स्ट्रिंग्ज तयार करा, डिव्हाइस प्रकार, ब्राउझर कुटुंब आणि ऑपरेटिंग सिस्टमद्वारे गाळण्याचे पर्यायांसह. वेब विकास चाचणी आणि सुसंगतता तपासणीसाठी परिपूर्ण.
यादृच्छिक वापरकर्ता एजंट जनरेटर
वेब विकास चाचणीसाठी यादृच्छिक, वास्तववादी ब्राउझर वापरकर्ता एजंट स्ट्रिंग्ज तयार करा.
उत्पन्न केलेला वापरकर्ता एजंट
साहित्यिकरण
यादृच्छिक वापरकर्ता एजंट जनरेटर
परिचय
वापरकर्ता एजंट स्ट्रिंग एक विशिष्ट मजकूर ओळखकर्ता आहे जो वेब ब्राउझर आणि इतर अनुप्रयोग वेबसाइट्सना त्यांच्या ओळखण्यासाठी पाठवतात. ही स्ट्रिंग सामान्यतः ब्राउझर, ऑपरेटिंग सिस्टम, उपकरणाचा प्रकार आणि वापरण्यात येणारा रेंडरिंग इंजिन याबद्दल माहिती समाविष्ट करते. वेब विकासक आणि चाचणी करणाऱ्यांसाठी, विविध वास्तविक वापरकर्ता एजंट स्ट्रिंग्समध्ये प्रवेश असणे आवश्यक आहे जेणेकरून विविध प्लॅटफॉर्मवर वेबसाइटची सुसंगतता, प्रतिसादशीलता आणि कार्यक्षमता चाचणी करता येईल.
हा यादृच्छिक वापरकर्ता एजंट जनरेटर साधन तुमच्या निवडक पॅरामीटर्सवर आधारित प्रामाणिक दिसणाऱ्या वापरकर्ता एजंट स्ट्रिंग्स तयार करतो. तुम्ही उपकरणाच्या प्रकारानुसार (डेस्कटॉप किंवा मोबाइल), ब्राउझर कुटुंब (क्रोम, फायरफॉक्स, सफारी किंवा एज) आणि ऑपरेटिंग सिस्टमनुसार फिल्टर करू शकता जेणेकरून तुम्हाला तुमच्या चाचणी आवश्यकतांसाठी योग्य वापरकर्ता एजंट तयार करता येईल. साधन एक साधी इंटरफेस प्रदान करते ज्यामध्ये एकाच क्लिकमध्ये तयार केलेली स्ट्रिंग कॉपी करण्याची आणि त्वरित नवीन यादृच्छिक स्ट्रिंग्ज तयार करण्याची पर्याय आहेत.
वापरकर्ता एजंट संरचना
वापरकर्ता एजंट स्ट्रिंग्स विशिष्ट नमुन्यांचे पालन करतात जे ब्राउझर आणि प्लॅटफॉर्मवर अवलंबून असतात, परंतु सामान्यतः त्यामध्ये अनेक सामान्य घटक समाविष्ट असतात:
- ब्राउझर ओळखकर्ता: ऐतिहासिक सुसंगती कारणांसाठी सहसा "Mozilla/5.0" पासून सुरू होते
- प्लॅटफॉर्म/ओएस माहिती: ऑपरेटिंग सिस्टमबद्दलची माहिती (विंडोज, मॅकओएस, अँड्रॉइड, आयओएस)
- ब्राउझर इंजिन: रेंडरिंग इंजिन (जसे की गेको, वेबकिट, किंवा ब्लिंक)
- ब्राउझर तपशील: विशिष्ट ब्राउझरचे नाव आणि आवृत्ती
येथे प्रमुख ब्राउझर्ससाठी सामान्य वापरकर्ता एजंट संरचनांचे विघटन आहे:
क्रोम
1Mozilla/5.0 (प्लॅटफॉर्म; तपशील) AppleWebKit/537.36 (KHTML, जसे गेको) Chrome/आवृत्ती Safari/537.36
2
फायरफॉक्स
1Mozilla/5.0 (प्लॅटफॉर्म; rv:geckoversion) Gecko/geckotrail Firefox/firefoxversion
2
सफारी
1Mozilla/5.0 (प्लॅटफॉर्म) AppleWebKit/webkitversion (KHTML, जसे गेको) आवृत्ती/safariversion Safari/safariversion
2
एज
1Mozilla/5.0 (प्लॅटफॉर्म) AppleWebKit/537.36 (KHTML, जसे गेको) Chrome/chromiumversion Safari/537.36 Edg/edgeversion
2
प्लॅटफॉर्म विभाग डेस्कटॉप आणि मोबाइल उपकरणांमध्ये महत्त्वाने भिन्न आहे:
डेस्कटॉप उदाहरणे:
- विंडोज:
Windows NT 10.0; Win64; x64
- मॅकओएस:
Macintosh; Intel Mac OS X 10_15_7
- लिनक्स:
X11; Linux x86_64
मोबाइल उदाहरणे:
- अँड्रॉइड:
Linux; Android 12; SM-G998B
- आयओएस:
iPhone; CPU iPhone OS 15_4 like Mac OS X
उपकरण प्रकारातील भिन्नता
डेस्कटॉप वापरकर्ता एजंट
डेस्कटॉप वापरकर्ता एजंट सामान्यतः विशिष्ट ऑपरेटिंग सिस्टम माहिती, आर्किटेक्चर तपशील (जसे की x86_64 किंवा Win64) समाविष्ट करतात, आणि कधी कधी भाषेच्या प्राधान्यांची माहिती देखील असते. ते मोबाइल वापरकर्ता एजंटपेक्षा ब्राउझरमध्ये अधिक सुसंगत असतात.
मोबाइल वापरकर्ता एजंट
मोबाइल वापरकर्ता एजंटमध्ये उपकरण मॉडेल माहिती, मोबाइल ऑपरेटिंग सिस्टम आवृत्त्या समाविष्ट असतात, आणि सहसा शेवटी "मोबाइल" हा शब्द असतो. आयओएस उपकरणांवरील मोबाइल सफारी "iPhone" किंवा "iPad" ओळखकर्ता समाविष्ट करेल, तर अँड्रॉइड उपकरणांमध्ये उत्पादक आणि मॉडेल क्रमांक समाविष्ट असतो.
ब्राउझर आवृत्ती नमुने
प्रत्येक ब्राउझर भिन्न आवृत्ती नमुनांचे पालन करतो:
- क्रोम: चार-भागीय आवृत्ती क्रमांक वापरतो (उदाहरणार्थ, 96.0.4664.110)
- फायरफॉक्स: सामान्यतः दोन किंवा तीन-भागीय आवृत्ती क्रमांक वापरतो (उदाहरणार्थ, 95.0 किंवा 95.0.2)
- सफारी: साध्या आवृत्ती क्रमांकांचा वापर करते जसे की 15.2
- एज: क्रोमसारख्या आवृत्ती क्रमांकांचा वापर करतो परंतु त्याच्या स्वतःच्या एज आवृत्तीसह (उदाहरणार्थ, 96.0.1054.62)
उपयोग प्रकरणे
यादृच्छिक वापरकर्ता एजंट निर्माण करण्याचे अनेक महत्त्वाचे अनुप्रयोग आहेत वेब विकास आणि चाचणीमध्ये:
-
क्रॉस-ब्राउझर सुसंगतता चाचणी: तुमच्या वेबसाइटची विविध ब्राउझरमध्ये कशी प्रदर्शित होते आणि कार्य करते याची चाचणी करा, अनेक ब्राउझर स्थापित करण्याची किंवा अनेक उपकरणे वापरण्याची आवश्यकता न करता.
-
प्रतिसादात्मक डिझाइन चाचणी: तुमच्या वेबसाइटने मोबाइल आणि डेस्कटॉप उपकरणे योग्यरित्या ओळखली की नाही हे सत्यापित करा आणि योग्य लेआउट प्रदान करा.
-
फीचर डिटेक्शन सत्यापन: विविध ब्राउझर क्षमतांसाठी तुमच्या वेबसाइटच्या फीचर डिटेक्शन यांत्रणांचा कार्यरत असल्याची खात्री करा.
-
QA आणि स्वयंचलित चाचणी: तुमच्या स्वयंचलित चाचणी स्क्रिप्टमध्ये विविध वापरकर्ता एजंट समाविष्ट करा जेणेकरून विविध वापरकर्ता वातावरणांचे अनुकरण करता येईल.
-
कामगिरी चाचणी: विविध ब्राउझर वातावरणातून तुमच्या वेबसाइटची कामगिरी कशी आहे हे विश्लेषण करा.
-
ब्राउझर-विशिष्ट समस्यांचे डिबगिंग: विशिष्ट ब्राउझर किंवा आवृत्तीत केवळ घडणाऱ्या बगचे पुनरुत्पादन आणि दुरुस्ती करा.
-
API चाचणी: तुमच्या API ने विविध क्लायंट अनुप्रयोगांकडून आलेल्या विनंत्या कशा हाताळतात याची चाचणी करा.
पर्याय
आमचा यादृच्छिक वापरकर्ता एजंट जनरेटर अनेक चाचणी परिस्थितींसाठी उपयुक्त असला तरी, काही पर्यायी पद्धती आहेत:
-
ब्राउझर चाचणी सेवा: BrowserStack, Sauce Labs, किंवा LambdaTest सारख्या प्लॅटफॉर्म्स वास्तविक ब्राउझर उदाहरणे प्रदान करतात चाचणीसाठी, फक्त वापरकर्ता एजंट अनुकरण करण्याऐवजी.
-
ब्राउझर विकासक साधने: बहुतेक आधुनिक ब्राउझर्स त्यांच्या विकासक साधनांद्वारे वापरकर्ता एजंट ओव्हरराइड करण्याची परवानगी देतात, जे जलद चाचणीसाठी उपयुक्त असू शकते.
-
वापरकर्ता एजंट स्विचर विस्तार: ब्राउझर विस्तार जे तुम्हाला ब्राउझिंग दरम्यान पूर्वनिर्धारित वापरकर्ता एजंट दरम्यान स्विच करण्याची परवानगी देतात.
-
आभासी मशीन किंवा कंटेनर: विविध ऑपरेटिंग सिस्टम आणि ब्राउझर्सच्या वास्तविक उदाहरणांचे चालवणे अधिक अचूक चाचणीसाठी.
-
हेडलेस ब्राउझर चाचणी: Puppeteer किंवा Selenium सारख्या साधनांचा वापर करून ब्राउझर्सवर प्रोग्रामेटिकली नियंत्रण ठेवणे विविध वापरकर्ता एजंट सेटिंग्जसह.
प्रत्येक पर्यायाचे स्वतःचे फायदे आहेत आणि तुमच्या विशिष्ट चाचणी आवश्यकतांनुसार अधिक योग्य असू शकतो.
इतिहास
वापरकर्ता एजंट स्ट्रिंगचा संकल्पना जागतिक वेबच्या सुरुवातीच्या दिवसांपासून आहे. "वापरकर्ता एजंट" हा शब्द HTTP विशिष्टतेतून आला आहे, जिथे तो वेब सर्व्हरला विनंती करणाऱ्या क्लायंट अनुप्रयोगाला संदर्भित करतो.
प्रारंभिक दिवस (1990s)
पहिला व्यापकपणे वापरला जाणारा ब्राउझर, NCSA Mosaic, एक साधी वापरकर्ता एजंट स्ट्रिंग समाविष्ट होती जी ब्राउझरचे नाव आणि आवृत्ती ओळखत होती. जेव्हा Netscape Navigator रिलीज झाला, तेव्हा त्याने एक समान स्वरूप वापरले. तथापि, जेव्हा वेब सर्व्हर्सने विशिष्ट ब्राउझरवर आधारित वेगवेगळा सामग्री वितरित करणे सुरू केले, तेव्हा "ब्राउझर स्निफिंग" म्हणून ओळखले जाणारे एक प्रथा उगम पावले.
ब्राउझर युद्धे आणि वापरकर्ता एजंट स्पूफिंग (उशिर 1990s)
Netscape आणि Internet Explorer यांच्यातील ब्राउझर युद्धांच्या दरम्यान, वेबसाइट्सने विशेषतः विशिष्ट ब्राउझरला अनुकूलित सामग्री प्रदान केली. सुसंगतता सुनिश्चित करण्यासाठी, ब्राउझर्सने इतर ब्राउझर्स म्हणून स्वतःला ओळखण्यासाठी स्ट्रिंग समाविष्ट करणे सुरू केले. यामुळेच बहुतेक आधुनिक ब्राउझर्स त्यांच्या वापरकर्ता एजंट स्ट्रिंगमध्ये "Mozilla" समाविष्ट करतात, जे Netscape Navigator च्या कोड नावाचा संदर्भ आहे.
मोबाइल क्रांती (2000s-2010s)
मोबाइल उपकरणांच्या वाढीने वापरकर्ता एजंट स्ट्रिंगमध्ये नवीन जटिलता आणली. मोबाइल ब्राउझर्सने मोबाइल म्हणून स्वतःला ओळखण्यासाठी योग्य सामग्री प्राप्त करण्यासाठी ओळखणे आवश्यक होते, ज्यामुळे उपकरण ओळखकर्ता आणि मोबाइल-विशिष्ट टोकनचा समावेश झाला.
आधुनिक आव्हाने (2010s-प्रस्तुत)
वेब पारिस्थितिकी तंत्र अधिक जटिल झाल्यामुळे, वापरकर्ता एजंट स्ट्रिंग्स अधिक गुंतागुंतीच्या झाल्या आहेत. आता त्यात अनेक ब्राउझर इंजिन्सचा संदर्भ समाविष्ट आहे (जसे की "AppleWebKit" आणि "Gecko") सुसंगती कारणांसाठी, जरी त्या इंजिन्सचा वास्तवात वापर केला जात नाही.
या जटिलतेमुळे वापरकर्ता एजंट स्ट्रिंग्सचे अचूक पार्सिंग करण्यात आव्हाने निर्माण झाली आहेत, आणि काही वेब मानक गटांनी वापरकर्ता एजंट स्ट्रिंग्सच्या कमी करण्याची किंवा साधी करण्याची शिफारस केली आहे. तथापि, मागील सुसंगती कारणांसाठी, पारंपरिक वापरकर्ता एजंट स्ट्रिंग वेब ब्राउझिंगचा एक आवश्यक भाग राहतो.
कोड उदाहरणे
येथे विविध प्रोग्रामिंग भाषांमध्ये वापरकर्ता एजंट स्ट्रिंग्ससह काम करण्याचे उदाहरणे आहेत:
1// जावास्क्रिप्ट: वापरकर्ता एजंटमधून ब्राउझर प्रकार ओळखणे
2function detectBrowser() {
3 const userAgent = navigator.userAgent;
4
5 if (userAgent.indexOf("Firefox") > -1) {
6 return "फायरफॉक्स";
7 } else if (userAgent.indexOf("SamsungBrowser") > -1) {
8 return "सॅमसंग ब्राउझर";
9 } else if (userAgent.indexOf("Opera") > -1 || userAgent.indexOf("OPR") > -1) {
10 return "ओपेरा";
11 } else if (userAgent.indexOf("Trident") > -1) {
12 return "इंटरनेट एक्सप्लोरर";
13 } else if (userAgent.indexOf("Edge") > -1) {
14 return "एज";
15 } else if (userAgent.indexOf("Chrome") > -1) {
16 return "क्रोम";
17 } else if (userAgent.indexOf("Safari") > -1) {
18 return "सफारी";
19 } else {
20 return "अज्ञात";
21 }
22}
23
24// वापर
25console.log("तुम्ही वापरत आहात: " + detectBrowser());
26
1# पायथन: विनंत्यांमध्ये कस्टम वापरकर्ता एजंट सेट करणे
2import requests
3
4def fetch_with_user_agent(url, user_agent):
5 headers = {
6 'User-Agent': user_agent
7 }
8 response = requests.get(url, headers=headers)
9 return response.text
10
11# उदाहरण वापर
12chrome_ua = 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36'
13content = fetch_with_user_agent('https://example.com', chrome_ua)
14print(content[:100]) # प्रतिसादाच्या पहिल्या 100 वर्णांची छाप
15
1<?php
2// PHP: वापरकर्ता एजंट वापरून मोबाइल उपकरणे ओळखणे
3function isMobileDevice() {
4 $userAgent = $_SERVER['HTTP_USER_AGENT'];
5 $mobileKeywords = array('Mobile', 'Android', 'iPhone', 'iPad', 'Windows Phone');
6
7 foreach ($mobileKeywords as $keyword) {
8 if (stripos($userAgent, $keyword) !== false) {
9 return true;
10 }
11 }
12 return false;
13}
14
15// वापर
16if (isMobileDevice()) {
17 echo "तुम्ही मोबाइल उपकरण वापरत आहात.";
18} else {
19 echo "तुम्ही डेस्कटॉप उपकरण वापरत आहात.";
20}
21?>
22
1// जावा: यादृच्छिक वापरकर्ता एजंट तयार करणे
2import java.util.Random;
3
4public class UserAgentGenerator {
5 private static final String[] CHROME_VERSIONS = {"96.0.4664.110", "95.0.4638.69", "94.0.4606.81"};
6 private static final String[] OS_VERSIONS = {"Windows NT 10.0; Win64; x64",
7 "Macintosh; Intel Mac OS X 10_15_7",
8 "X11; Linux x86_64"};
9
10 public static String generateRandomChromeUserAgent() {
11 Random random = new Random();
12 String osVersion = OS_VERSIONS[random.nextInt(OS_VERSIONS.length)];
13 String chromeVersion = CHROME_VERSIONS[random.nextInt(CHROME_VERSIONS.length)];
14
15 return "Mozilla/5.0 (" + osVersion + ") AppleWebKit/537.36 (KHTML, like Gecko) " +
16 "Chrome/" + chromeVersion + " Safari/537.36";
17 }
18
19 public static void main(String[] args) {
20 System.out.println(generateRandomChromeUserAgent());
21 }
22}
23
1# रूबी: वापरकर्ता एजंट स्ट्रिंग पार्स करणे
2require 'user_agent_parser'
3
4def parse_user_agent(user_agent_string)
5 parser = UserAgentParser::Parser.new
6 client = parser.parse(user_agent_string)
7
8 {
9 browser_name: client.family,
10 browser_version: client.version.to_s,
11 os_name: client.os.family,
12 os_version: client.os.version.to_s,
13 device: client.device.family
14 }
15end
16
17# उदाहरण वापर
18ua = 'Mozilla/5.0 (iPhone; CPU iPhone OS 14_4 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0.3 Mobile/15E148 Safari/604.1'
19info = parse_user_agent(ua)
20puts info
21
1// C#: HttpClient मध्ये वापरकर्ता एजंट सेट करणे
2using System;
3using System.Net.Http;
4using System.Threading.Tasks;
5
6class Program
7{
8 static async Task Main()
9 {
10 // कस्टम वापरकर्ता एजंटसह HttpClient तयार करणे
11 using (var httpClient = new HttpClient())
12 {
13 string userAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36";
14 httpClient.DefaultRequestHeaders.UserAgent.ParseAdd(userAgent);
15
16 try
17 {
18 // कस्टम वापरकर्ता एजंटसह विनंती करा
19 HttpResponseMessage response = await httpClient.GetAsync("https://example.com");
20 response.EnsureSuccessStatusCode();
21 string responseBody = await response.Content.ReadAsStringAsync();
22
23 Console.WriteLine($"प्रतिसाद प्राप्त झाला आहे: {response.StatusCode}");
24 Console.WriteLine(responseBody.Substring(0, 100) + "..."); // पहिल्या 100 वर्णांची छाप
25 }
26 catch (HttpRequestException e)
27 {
28 Console.WriteLine($"विनंती त्रुटी: {e.Message}");
29 }
30 }
31 }
32}
33
1// गो: कस्टम वापरकर्ता एजंटसह HTTP विनंत्या तयार करणे
2package main
3
4import (
5 "fmt"
6 "io/ioutil"
7 "net/http"
8)
9
10func main() {
11 // नवीन विनंती तयार करणे
12 req, err := http.NewRequest("GET", "https://example.com", nil)
13 if err != nil {
14 fmt.Printf("विनंती तयार करताना त्रुटी: %s\n", err)
15 return
16 }
17
18 // कस्टम वापरकर्ता एजंट सेट करणे
19 req.Header.Set("User-Agent", "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36")
20
21 // विनंती पाठवणे
22 client := &http.Client{}
23 resp, err := client.Do(req)
24 if err != nil {
25 fmt.Printf("विनंती पाठवताना त्रुटी: %s\n", err)
26 return
27 }
28 defer resp.Body.Close()
29
30 // प्रतिसाद वाचन
31 body, err := ioutil.ReadAll(resp.Body)
32 if err != nil {
33 fmt.Printf("प्रतिसाद वाचन करताना त्रुटी: %s\n", err)
34 return
35 }
36
37 fmt.Printf("प्रतिसाद स्थिती: %s\n", resp.Status)
38 fmt.Printf("प्रतिसाद शरीराचा पूर्वावलोकन: %s\n", body[:100])
39}
40
सामान्य वापरकर्ता एजंट नमुने
येथे विविध ब्राउझर आणि प्लॅटफॉर्मसाठी काही वास्तविक वापरकर्ता एजंट स्ट्रिंग्सचे उदाहरणे आहेत:
डेस्कटॉप ब्राउझर्स
क्रोम विंडोजवर:
1Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36
2
फायरफॉक्स मॅकओएसवर:
1Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:95.0) Gecko/20100101 Firefox/95.0
2
सफारी मॅकओएसवर:
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
एज विंडोजवर:
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
मोबाइल ब्राउझर्स
क्रोम अँड्रॉइडवर:
1Mozilla/5.0 (Linux; Android 12; SM-G998B) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.104 Mobile Safari/537.36
2
सफारी आयफोनवर:
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
फायरफॉक्स अँड्रॉइडवर:
1Mozilla/5.0 (Android 12; Mobile; rv:95.0) Gecko/95.0 Firefox/95.0
2
सॅमसंग इंटरनेट गॅलक्सीवर:
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
संदर्भ
-
"वापरकर्ता एजंट." MDN वेब डॉक, मोजिला, https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/User-Agent
-
"ब्राउझर वापरकर्ता एजंट स्ट्रिंग्स." WhatIsMyBrowser.com, https://www.whatismybrowser.com/guides/the-latest-user-agent/
-
"HTTP वापरकर्ता-एजंट हेडर स्पष्ट केले." KeyCDN, https://www.keycdn.com/support/user-agent
-
"क्लायंट हिंट्स." MDN वेब डॉक, मोजिला, https://developer.mozilla.org/en-US/docs/Web/HTTP/Client_hints
-
"ब्राउझर वापरकर्ता एजंट स्ट्रिंगचा इतिहास." वेबएआयएम, https://webaim.org/blog/user-agent-string-history/
-
"वापरकर्ता एजंटसाठी ब्राउझर ओळख." Google Developers, https://developer.chrome.com/docs/multidevice/user-agent/
प्रतिसाद
या टूलविषयी अभिप्राय देण्याची प्रारंभिक अभिप्राय देण्यासाठी अभिप्राय टोस्ट वर क्लिक करा.
संबंधित टूल्स
आपल्या कामच्या प्रक्रियेसाठी उपयुक्त असणारे अधिक उपकरण शोधा.