用户代理UA
简介:
用户代理英文全称为User Agent,简称UA,现在被广泛用来标识浏览器客户端信息。
发展状况:
User Agent在互联网早期就已经存在,那时互联网是完全基于文本的,用户直接浏览器互联网时需要敲入各种键盘命令。后来开发人员开发出多种浏览工具来帮助进行互联网浏览,这些工具就被称为是用户“代理”(User Agent),因为这些工具模仿用户敲入命令的行为,但是用户并不需要了解获取信息的复杂命令。目前几乎所有人都采用网络浏览器来作为用户代理User Agent。
用户代理字段(User Agent String):
有时候网站需要获取客户端的信息,以了解网站内容在客户端的展现方式,因此大部分用户代理会向网站发送用户代理字段,该字符串通常是由字母和数字组成的。
因此,各种不同的网络浏览器(Internet Explorer,Firefox,Opera,遨游、搜狗)会用不同的用户代理字符串(user agent strings)来作为自身的标志。同时,像Google、Yahoo、Bing和百度这种搜索引擎,在通过网络爬虫来访问网页时,也会通过用户代理字符串(user agent strings)来进行作为自身标志。这也是为何网站统计报告中都能够统计浏览器信息以及爬虫信息。
使用实例:
当用户使用Firefox访问下载网站时,网站通过用户代理字符串User Agent String获取到该用户的浏览器版本,发现该版本的Firefox难以完美地展现网站的内容,就可以给出个性化的提示:“您可以试试最新版的Firefox,这样能够展现最新的WebGL和HTML5内容”。另外,网站还可以根据用户代理字符串User Agent String来给出不同的CSS文件,以保证在不同的浏览器上均能够展现出最好的效果。
用户代理UA的更多相关文章
- 应用层之E-mail服务及javaMail邮件发送的知识总结
关于Email服务你需要知道的知识点: 概述: 今天来介绍一下应用层的电子邮件服务,我们每天几乎都在用,电子邮件(email)服务也是一种基于C/S模式的服务,它采用的是一种"存储-转发&q ...
- HTTP超文本传输协议-HTTP/1.1中文版
摘要 超文本传输协议(HTTP)是一种为分布式,合作式,多媒体信息系统服务,面向应用层的协议.它是一种通用的,不分状态(stateless)的协议,除了诸如名称服务和分布对象管理系统之类的超文本用途外 ...
- [转]在 ASP.NET MVC 4 中创建为移动设备优化的视图
原文链接 https://msdn.microsoft.com/zh-cn/magazine/dn296507.aspx 如果深入探讨有关编写移动设备网站的常识性考虑因素,会发现其中有一种内在矛盾. ...
- xmpp即时通讯的笔记(摘抄)
xmpp的使用: 即时通讯 instant messaging(IM) : -->实时收发信息! 即时通讯相关软件: **QQ,MSN,GoogleTalk,AIM,Jabber(XMPP别名 ...
- HTTP协议及其请求头分析
HTTP协议及其请求头分析 HTTP协议及其请求头分析 众所周知,Internet的基本协议是TCP/IP协议,目前广泛采用的FTP.Archie Gopher等是建立在TCP/IP协议之上的应用 ...
- [转]HTTP协议及其请求头分析
众所周知,Internet的基本协议是TCP/IP协议,目前广泛采用的FTP.Archie Gopher等是建立在TCP/IP协议之上的应用层协议,不同的协议对应着不同的应用. WWW服务器使用 ...
- http 超文本传输协议
超文本传输协议(HTTP,HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议.所有的WWW文件都必须遵守这个标准.设计HTTP最初的目的是为了提供一种发布和接 ...
- RTP/RTCP/RTSP/SIP/SDP 关系(直接看总结)
RTP/RTCP/RTSP/SIP/SDP 关系 RTP(实时传输协议,传输层) Real-time Transport Protocol)是用于Internet上针对多媒体数据流的一种传输层协议 ...
- [百科] - SIP(会话发起协议)
SIP(会话发起协议)SIP是类似于HTTP的基于文本的协议.SIP可以减少应用特别是高级应用的开发时间.由于基于IP协议的SIP利用了IP网络,固定网运营商也会逐渐认识到SIP技术对于他们的深远意义 ...
随机推荐
- Java集合类——Set、List、Map、Queue接口
目录 Java 集合类的基本概念 Java 集合类的层次关系 Java 集合类的应用场景 一. Java集合类的基本概念 在编程中,常需要集中存放多个数据,数组是一个很好的选择,但数组的长度需提前指定 ...
- fluentd安装和配置,收集docker日志
安装fluentd 参考文档: 官方文档 https://docs.fluentd.org/v0.12/categories/installation fluentd配置 https://www ...
- NC使用技巧
1. NC 1.1概述 1.1.1 优点: 1)网络工具中的瑞士军刀 2)侦听模式/传输模式. 3)可代替telnet获取banner信息. 4)传输文件/目录. 5)传输文本信息. 6)加密传输文件 ...
- chrome debugger 调试
debugger 使用chrome调试时,html页面的js代码中可能不好打断点(因为在jvm中才会有代码) 我一开始是故意在需要断点的后面或前面写个错的alert,通过jvm找到此处,然后在需要的地 ...
- laravel路由组+中间件
在rotues中的web.php
- stm32+lwip(一):使用STM32CubeMX生成项目
我是卓波,很高兴你来看我的博客. 系列文章: stm32+lwip(一):使用STM32CubeMX生成项目 stm32+lwip(二):UDP测试 stm32+lwip(三):TCP测试 stm32 ...
- LINQ巩固
LINQ巩固 LINQ过滤运算符 Where 基于谓词函数过滤值 测试例子如下: public class TestModel { public string Name { get; set; } p ...
- MVC5使用单选按钮与下拉框【转】
某人认为下拉列表的呈现形式不如单选按钮漂亮,我只好去测试一下单选按钮与下拉框了.测试代码如下: 1.model类Blog.cs(类型使用枚举类型,自动生成的视图会以下拉列表形式显示): using S ...
- Hibernate-ORM:15.Hibernate中的Criteria查询
------------吾亦无他,唯手熟尔,谦卑若愚,好学若饥------------- 本篇博客讲师Hibernate中的Criteria查询! 一,Criteria简介: 刚接触Hibernate ...
- cf987f AND Graph
#include <iostream> #include <cstdio> using namespace std; int n, uu, m; bool a[4500005] ...