我可以用以下代码检查iPhone:
(navigator.userAgent.match(/iPhone/i))
Run Code Online (Sandbox Code Playgroud)
但我希望使用此userAgent定位Windows Phone:
Mozilla/4.0(compatible; MSIE 6.0; Windows NT 5.1;
Motorola_ES405B_19103; Windows Phone 6.5.3.5)
Run Code Online (Sandbox Code Playgroud)
有没有办法做到这一点?
想存储每个来到网站的人的IP地址.这样做的最佳方法是什么?让我们说有模特
class ip(models.Model):
pub_date = models.DateTimeField('date published')
ip_address = models.GenericIPAddressField()
Run Code Online (Sandbox Code Playgroud)
什么是模型或视图中的代码或我将其保存在数据库中的某个地方也希望使用类似于此的用户代理信息保存它.

如何判断是否有人在 Windows 11 中打开我的网站?
我测试用户代理,当有人使用 Windows 11 打开我的网站时,我会得到这个
“Mozilla/5.0(Windows NT 10.0;Win64;x64;rv:91.0)Gecko/20100101 Firefox/91.0”
所以从技术上讲,这是 Windows 10,而不是 11。
有什么方法可以检测到这一点吗?
我$_SERVER['HTTP_USER_AGENT']在登录我的网站后用来记录用户的浏览器和操作系统,当我向echo他展示这些时
火狐
Mozilla/5.0 (Windows NT 6.1; rv:10.0.2) Gecko/20100101 Firefox/10.0.2
Run Code Online (Sandbox Code Playgroud)
铬
Mozilla/5.0 (Windows NT 6.1) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.162 Safari/535.19
Run Code Online (Sandbox Code Playgroud)
苹果浏览器
Mozilla/5.0 (Windows NT 6.1) AppleWebKit/534.50 (KHTML, like Gecko) Version/5.1 Safari/534.50
Run Code Online (Sandbox Code Playgroud)
歌剧
Opera/9.80 (Windows NT 6.1; U; en) Presto/2.9.168 Version/11.50
Run Code Online (Sandbox Code Playgroud)
IE
Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)
Run Code Online (Sandbox Code Playgroud)
我很想知道为什么Mozilla/5.0echo在IE浏览器,Safari和Chrome中都有前缀?
我正在使用Xcode 6作为带有Swift的iOS应用程序.我有一个带有嵌入式UIWebView的简单ViewController.你可以在下面找到代码.现在我想更改User-AgentHTTP标头.我尝试使用该setValue方法,NSURLRequest但它不起作用(请参阅未注释的行).有谁知道这是怎么做到的吗?
import UIKit
class WebViewController: UIViewController {
@IBOutlet weak var webView: UIWebView!
override func viewDidAppear(animated: Bool) {
var url = NSURL(string: "https://www.samplepage.com")
var request = NSMutableURLRequest(URL: url)
// request.setValue("Custom-Agent", forHTTPHeaderField: "User-Agent")
webView.loadRequest(request)
}
}
Run Code Online (Sandbox Code Playgroud) 我们已经为移动设备准备了一个替代版本的网站.我们服务的内容不同,效果也很好.
检测要投放的版本的最佳方法是什么.我们没有所有移动设备的列表,因此使用用户代理标头很棘手,因为我们可能会遗漏一些东西.
我们考虑过使用设备屏幕宽度 - 但如果移动设备不支持javascript会发生什么.我们怎么闻这个?
在我的助手模块中,我有:
def abc(url)
...
if request.env['HTTP_USER_AGENT']
do something
end
end
Run Code Online (Sandbox Code Playgroud)
在我的spec文件中,我有:
describe "#abc" do
before(:each) do
@meth = :abc
helper.request.env['HTTP_USER_AGENT'] = "..."
end
it "should return the webstart jnlp file" do
@obj.send(@meth, "some_url").should ....
end
end
Run Code Online (Sandbox Code Playgroud)
当我运行规范时,我有这个错误:
undefined local variable or method `request' for <ObjectWithDocHelperMixedIn:0x00000103b5a7d0>
Run Code Online (Sandbox Code Playgroud)
如何在我的规范中存根request.env ['...']?
谢谢.
我正在构建我的网站,我想知道用户是使用Android的浏览器还是使用带有webview的应用程序.
可能吗 ??
是否已知Edge或Spartan浏览器的用户代理?任何人都可以告诉我如何检测这个浏览器并在IE发布之前将其与IE区分开来吗?
我很想知道用户代理是否是使用PHP在服务器端的"Chrome".是否有可靠的正则表达式来解析请求标头中的用户代理字符串?
user-agent ×10
browser ×3
javascript ×2
android ×1
django ×1
django-admin ×1
html ×1
http ×1
ios ×1
ip-address ×1
mozilla ×1
nsurlrequest ×1
php ×1
redirect ×1
regex ×1
request ×1
rspec ×1
swift ×1
uiwebview ×1
web ×1