🔮 请求地址
# URL地址
ForestRequest 对象提供设置/获取URL地址的接口方法
url(String url)
设置请求URL
- 参数
url
: URL字符串
url(ForestURL url)
设置请求URL
- 参数
url
: ForestURL 类实例
// 设置请求URL地址,url: http://127.0.0.1:8080/test
request.url("http://127.0.0.1:8080/test");
// 设置路径为 /abc, 主机地址和端口部分保留,url: http://127.0.0.1:8080/abc
request.url("/abc");
// 覆盖掉整个URL地址,url: http://forest.dtflyx.com/111
request.url("http://forest.dtflyx.com/111");
// 使用 ForestURL 类型对象作为参数,url: http://localhost:8080/222
request.url(new ForestURL(new URL("http://localhost:8080/222")));
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
host(String host)
设置URL的主机名/域名/IP地址部分
- 参数
host
: 主机名/域名/IP地址
// 修改请求地址中的主机名/IP地址/域名部分,url: http://127.0.0.1:8080/222
request.host("127.0.0.1");
// 同上,修改请求地址中的主机名/IP地址/域名部分
request.url().setHost("127.0.0.1");
1
2
3
4
2
3
4
port(int port)
设置URL中的端口
- 参数
port
: 端口号
// 修改请求地址中的端口号,url: http://127.0.0.1:8888/222
request.port(8888);
// 同上,修改请求地址中的端口号
request.url().setPort(8888);
1
2
3
4
2
3
4
scheme(String scheme)
设置URL中的HTTP协议头
- 参数
scheme
: HTTP协议头
// 修改请求地址中的HTTP协议头,url: https://127.0.0.1:8888/222
request.scheme("https");
// 同上,修改请求地址中的HTTP协议头
request.url().setScheme("https");
1
2
3
4
2
3
4
path(String path)
设置URL路径
- 参数
path
: URL路径
// 修改请求地址中的路径部分,和url方法类似,但path方法不接受完整url地址作为参数,url: https://127.0.0.1:8888/333
request.path("/333");
// 同上,修改请求地址中的路径部分
request.url().setPath("/333");
1
2
3
4
2
3
4
ref(String ref)
设置Reference, 即URL井号后面的字符串
- 参数
ref
: URL井号后面的字符串
// 设置Reference,即URL井号后面的字符串,url: https://127.0.0.1:8888/333#hello
request.ref("hello");
1
2
2
# 获取URL地址
urlString()
获取请求URL字符串
- 返回值 : URL字符串
url()
获取请求URL
- 返回值 : ForestURL 类实例
// 获取URL地址字符串
// 如:http://localhost:8080/test
String urlStr = request.urlString();
// 获取ForestURL类对象
ForestURL url = request.url();
1
2
3
4
5
2
3
4
5
schema()
获取请求地址的HTTP协议头
- 返回值 : HTTP协议头
// 获取URL地址的HTTP协议头
String schema = request.scheme();
1
2
2
host()
获取URL中的主机名/域名/IP地址部分
- 返回值 : 主机名/域名/IP地址部分字符串
// 获取请求地址中的主机名/IP地址/域名部分
String host = request.host();
// 同上,获取请求地址中的主机名/IP地址/域名部分
host = request.url().getHost();
1
2
3
4
2
3
4
port()
获取URL中的端口号
- 返回值 : int 整数, URL中的端口号
// 获取请求地址中的端口号
// 如:8080
// 默认为 -1, 即没有端口号
// 没有端口号也可以理解为 http 下的 80 和 https 下的 443
int port = request.port();
// 同上,获取请求地址中的端口号
port = request.url().getPort();
1
2
3
4
5
6
7
2
3
4
5
6
7
path()
获取URL路径
- 返回值: URL路径
// 获取请求地址中的路径部分,如:/test
String path = request.path();
// 同上,获取请求地址中的路径部分
path = request.url().getPath();
1
2
3
4
2
3
4
ref()
获取Reference, 即URL井号后面的字符串
- 返回值: URL井号后面的字符串
// 获取Reference,即URL井号后面的字符串
// 如:http://localhost/test#hello 中的 hello 那部分字符串
request.ref();
1
2
3
2
3
# 主机地址
主机地址包含: 主机名/IP地址/域名 + 端口号
使用 address 方法的好处是,只会修改主机名或端口,不会影响URL的其它部分(比如 Query 参数,HTTP协议头,路径部分等等)
address(String host, int port)
设置请求的主机地址(主机名/域名/IP地址 + 端口号)
- 参数
host
: 主机名/域名/IP地址- 参数
port
: 端口号
// 创建新的请求对象
// url: http://localhost/test
Forest.get("/test")
// 设置请求主机地址,不会改变URL地址的其它部分
// 参数1:主机名/IP地址/域名
// 参数2:端口号
// url: http://192.168.0.1:8881/test
.address("192.168.0.1", 8881)
// 同上,设置请求主机地址
// 参数为 ForestAddress 对象
// url: http://192.168.0.2:8882/test
.address(new ForestAddress("192.168.0.2", 8882));
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
帮助我们改善此文档 (opens new window)
上次更新: 2023/06/19, 17:37:19