天道酬勤,学无止境

user-agent

HttpUrlConnection redirection does not use request properties of orginial connection

Setting properties of a connection do not carry forward to redirected connections HttpURLConnection mConnection = (HttpURLConnection) url.openConnection(); mConnection = addRequestProperty("User-Agent", "Mozilla"); InputStream stream = mConnection.getInputStream(); if there is a 302 code, mConnection is redirected, but the user-agent is "Java/1.5.0_28". Any suggestion how to handle this?

2021-06-24 03:50:48    分类:问答    java   user-agent

NSURLSession 是否自动发送用户代理(does NSURLSession send user-agent automatically)

问题 当用户使用 WatchKit 2.0、iOS 9.0 时,NSURLSession 是否会自动发送用户代理? 有没有办法在 WatchKit 应用程序中验证这一点? 回答1 是的,用户代理作为默认会话配置的一部分自动提供。 默认的NSURLSession请求标头User-Agent字段包括您的 watchOS 应用程序扩展的捆绑名称 ( CFBundleName ) 和内部版本号 ( CFBundleVersion ): $(CFBundleName)/$(CFBundleVersion) CFNetwork/808.3 Darwin/16.3.0 请注意,不包括您的应用程序的版本号 ( CFBundleShortVersionString )。 (有关详细信息,请参阅技术说明 TN2420:版本号和内部版本号。) 例如,对于 Build Number 1 的产品“Foo”,您的用户代理将是: Foo%20WatchKit%20Extension/1 CFNetwork/808.3 Darwin/16.3.0 如何验证? 我认为您的应用程序中没有办法检查默认用户代理字段,因为它nil (除非您已将其设置为自定义值)。 但是,您可以使用 netcat 检查模拟器发送的请求。 在终端中运行nc -l 5678以让 netcat

2021-06-24 01:07:24    分类:技术分享    ios9   watchkit   user-agent   nsurlsession

IE 10 on WP8 ignores media queries?

I'm working on a site that uses media queries. I can see in my desktop browser that they are working correctly, but when I navigate to the site on my WP8 device, no CSS is loaded. I've created a very simple HTML page to replicate the problem and show what solution I tried, but couldn't get to work. Here is the entire code: <html> <head> <title>WP8 Test</title> <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" /> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script> <style type="text/css"> @-webkit

2021-06-23 08:14:58    分类:问答    windows-phone   media-queries   user-agent   viewport

Scrapy - 在请求中更改用户代理的正确方法(Scrapy - Correct way to change User Agent in Request)

问题 我通过覆盖重试之前更改代理和用户代理的 RetryMiddleware 在 Scrapy 中创建了一个自定义中间件。 看起来像这样 class CustomRetryMiddleware(RetryMiddleware): def _retry(self, request, reason, spider): retries = request.meta.get('retry_times', 0) + 1 if retries <= self.max_retry_times: Proxy_UA_Middleware.switch_proxy() Proxy_UA_Middleware.switch_ua() logger.debug("Retrying %(request)s (failed %(retries)d times): %(reason)s", {'request': request, 'retries': retries, 'reason': reason}, extra={'spider': spider}) retryreq = request.copy() retryreq.meta['retry_times'] = retries retryreq.dont_filter = True retryreq.priority = request

2021-06-23 08:11:25    分类:技术分享    python   scrapy   screen-scraping   user-agent

路径中的非法字符取决于用户代理?(Illegal characters in path depending on User-Agent?)

问题 我对 ASP.NET 有两个相同的调用,唯一的区别是用户代理。 我用 Fiddler 重现了这个问题。 HTTP 请求行是: PUT http://localhost/API/es/us/havana/club/tickets/JiWOUUMxukGVWwVXQnjgfw%7C%7C214 HTTP/1.1 适用于: User-Agent: Mozilla/5.0 (Linux; Android 4.3; Nexus 10 Build/JSS15Q) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2307.2 Safari/537.36 失败: User-Agent: Mozilla/5.0 (iPhone; CPU iPhone OS 8_0 like Mac OS X) AppleWebKit/600.1.3 (KHTML, like Gecko) Version/8.0 Mobile/12A4345d Safari/600.1.4 其他一切都是 100% 相同的。 回答1 就我而言,根本原因是 MVC 的 MultipleViews 和 DisplayMode 提供程序。 这允许 MVC 应用程序神奇地获取特定于设备的视图; 例如 custom.cshtml customer.mobile.cshtml

2021-06-23 03:33:15    分类:技术分享    http   asp.net-web-api   fiddler   user-agent

是否可以检测到 Android 强制门户浏览器?(Is it possible to detect the Android captive portal browser?)

问题 我有一个强制门户,从 Android 5.0+ Lollipop 开始,它在 Android 的强制门户浏览器中启动,而不是设备的默认浏览器。 我需要以某种方式检测它们是否在强制门户浏览器(而不是常规 Web 浏览器)中,如果是,则显示不同的内容。 是否可以通过检查用户代理或通过 Javascript 来检测它们是否在 Captive Portal Browser 窗口中? 我查看了我的 Android 5.1 设备上的用户代理,但看不到任何区分它们的内容: 俘虏门户浏览器: Mozilla/5.0 (Linux; Android 5.1; Elite 5 Build/LMY47D) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/39.0.0.0 Mobile Safari/537.36 常规谷歌浏览器: Mozilla/5.0 (Linux; Android 5.1; Elite 5 Build/LMY47D) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.94 Mobile Safari/537.36 版本号略有不同,但这在 Android/Chrome 版本之间似乎不一致,并且不是确定浏览器类型的可靠方法。 还有其他方法可以检测吗?

2021-06-22 21:09:53    分类:技术分享    javascript   android   google-chrome   user-agent   captivenetwork

Javascript 中的桌面/操作系统用户代理(Desktop/OS User Agents in Javascript)

问题 以下是我当前的脚本: <script type="text/javascript"> if (navigator.userAgent.indexOf('BlackBerry')!= -1){ document.write('<link rel="stylesheet" href="/m/css/mobile.css" type="text/css" />'); } else if (navigator.userAgent.indexOf('iPhone')!= -1) { document.write('<link rel="stylesheet" href="/m/css/smartmobile.css" type="text/css" />'); }else if (navigator.userAgent.indexOf('Android')!= -1) { document.write('<link rel="stylesheet" href="/m/css/smartmobile.css" type="text/css" />'); } else if (navigator.userAgent.indexOf('Windows XP')!= -1) { document.write('<link rel="stylesheet" href="/m/css

2021-06-22 18:47:38    分类:技术分享    javascript   user-agent

在 .htaccess/apache 中检测 iPhone 浏览器并重定向到 iPhone 站点(Detect iPhone browser in .htaccess/apache and redirect to iPhone site)

问题 是否可以在 .htaccess 中检测 iPhone 浏览器代理并将用户重定向到正确的 iPhone 页面? 回答1 你当然可以 - #redirect mobile browsers RewriteCond %{HTTP_USER_AGENT} ^.*iPhone.*$ RewriteRule ^(.*)$ http://mobile.yourdomain.com [R=301] RewriteCond %{HTTP_USER_AGENT} ^.*BlackBerry.*$ RewriteRule ^(.*)$ http://mobile.yourdomain.com [R=301] RewriteCond %{HTTP_USER_AGENT} ^.*Palm.*$ RewriteRule ^(.*)$ http://mobile.yourdomain.com [R=301] 取自这里 回答2 有点谷歌搜索,甚至有一个方便的发电机。 http://detectmobilebrowsers.mobi/ 回答3 要添加到@Tommy 的响应中,如果您想通过 URI,请将 RewriteRules 更改为以下内容: RewriteRule ^(.*)$ http://mobile.yourdomain.com$1 [R=301] 否则,您会将所有请求重定向到移动主页

2021-06-22 12:01:00    分类:技术分享    iphone   apache   .htaccess   user-agent

从 javascript 获取 IE 11 内部版本号(Get IE 11 build number from javascript)

问题 TL;DR - 如何在 JavaScript 中获取 IE 11 的内部版本号? 我在版本 11.0.1 和 11.0.7 之间的某个时候修复了一个错误。 我想知道遇到此问题的用户的百分比。 基本上我想得到这个数字: 回答1 我认为仅使用 JavaScript 是不可能的。 Microsoft 试图隐藏 IE11 实际上是 Internet Explorer 的事实,请参阅 http://www.nczonline.net/blog/2013/07/02/internet-explorer-11-dont-call-me-ie/。 因此,即使是 IE11 的用户代理现在看起来也像这样: Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; .NET4.0E; .NET4.0C; .NET CLR 3.5.30729; .NET CLR 2.0.50727; .NET CLR 3.0.30729; Tablet PC 2.0; InfoPath.3; rv:11.0) like Gecko 更新版本存储在 Windows 注册表中,您可以在下面找到它 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\svcUpdateVersion 但是,通过 JavaScript 访问

2021-06-22 11:33:25    分类:技术分享    javascript   internet-explorer   internet-explorer-11   user-agent

How to detect iOS 13 on JavaScript?

I use this function to detect iOS export function isiOS() { return navigator.userAgent.match(/ipad|iphone/i); } is there any way to make it detected iOS13+? thanks Why do I need it? usually, iOS safari can't download files therefore to make image downloadable I should render it as <img src={qrImage} alt="creating qr-key..." /> however on Android/PC and pretty much everywhere else it's possible to do it directly via <a href={qrImage} download="filename.png"> <img src={qrImage} alt="qr code" /> </a> so user just press image and download it. Turned on on iOS13 now second option works while first

2021-06-22 05:40:11    分类:问答    ios   iphone   safari   user-agent   ios13