接口的访问基本机制:User Agent (web interface basic: user-agent)
访问量: 3498
refer to: http://www.w3.org/Protocols/rfc2616/rfc2616-sec5.html
在http请求中,不是所有的信息都从request parameter中获得。例如:
GET http://host.com/some_interface?a=1&b=2
在这个请求中, 除了在 request_url中,可以看到 a=1, b=2 ,还能在 User Agent中获知,它的 os(操作系统),它的浏览器版本号等等。
在 w3.org的官方文档中,我们可以看到, request 由下列方式组成: (CRLF 就是换行, mac用 CR,linux用LF换,Windows是两个同时用:CRLF)
Request = Request-Line *( ( general-header | request-header | entity-header ) CRLF ) [ message-body]
而一个 request-line 是这样组成的:
Request-Line = Method SP Request-URI SP HTTP-Version CRLF 例如: GET http://www.w3.org/ HTTP/1.1
一个 request-header包含了下面这些: (注意最下面的User Agent )
request-header = Accept | Accept-Charset | Accept-Encoding | Accept-Language | Authorization | Expect | From | Host | If-Match | If-Modified-Since | If-None-Match | If-Range | If-Unmodified-Since | Max-Forwards | Proxy-Authorization | Range | Referer | TE | User-Agent
所以,如果需要,我们可以把某些特定参数(例如os, device_id, device_type 等等)放在 User-Agent中。