Java编程:浅析 httpRequest 中的参数requestURLrequestURIservletPathcontextPathserverNameserverPort等
Posted 志波同学
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java编程:浅析 httpRequest 中的参数requestURLrequestURIservletPathcontextPathserverNameserverPort等相关的知识,希望对你有一定的参考价值。
本篇文章主要介绍下 httpRequest 中的参数的含义与区别。
以 http://localhost:8080/sns/test/get
路径为例进行分析,其中 sns 为应用名称,/test/get 为请求的 controller 路径。springboot 中配置如下:
server.port=8080
server.context-path=/sns
1.请求路径参数
仔细考虑了下,总觉得这几个参数无法翻译为中文,直接看请求结果吧。
1、requestURL
本例中值为 http://localhost:8080/sns/test/get
。
2、requestURI
本例中值为 /sns/test/get
。
3、servletPath
本例中值为 /test/get
。
4、contextPath
本例中值为 /sns
。
5、serverName
本例中值为 localhost
。
2.端口参数
1、serverPort
一个 http 请求的过程中可能会经理多个代理和转发,最终到达应用服务器,serverPort
是指请求开始时,Url 路径中的端口,即请求的最初端口。本例中值为 8080。
2、localPort
一个 http 请求的过程中可能会经过多个代理和转发,最终到达应用服务器,localPort
是指请求到达应用服务器时该服务器的端口,即该应用的最终端口。本例中值为 8080,因为请求过程中没有代理或者转发。
3、remotePort
httpRequest 是从服务端的角度考虑的,相对于服务端而言,客户端是远程对象,该参数就是远程客户端的端口。本例中值为 51571。
3.协议与方法
1、method
http 请求时使用的方法,通常有如下几种请求方法,spring 中定义如下:
public enum RequestMethod
GET, HEAD, POST, PUT, PATCH, DELETE, OPTIONS, TRACE
2、scheme
http 请求所使用的协议,本例中值为 http。
示例代码
以上是关于Java编程:浅析 httpRequest 中的参数requestURLrequestURIservletPathcontextPathserverNameserverPort等的主要内容,如果未能解决你的问题,请参考以下文章