方案
在 Java 中,你可以利用 URLEncoder
和 URLDecoder
来对 URL 字符串进行编解码,然后使用 String.split()
方法或者使用 正则表达式
来从 URL 字符串中获取参数。文章源自浅海拾贝-https://blog.terwergreen.com/java-get-the-parameter-in-the-url-zbioxp.html
代码示例
/**
* 获取url中的参数
*
* @param url 链接
* @param key 参数key
* @return 参数值
*/
public static String getParameterFromUrl(String url, String key) {
String[] params = url.split("\\?");
String[] queryParams = params[1].split("&");
String result = "";
for (String queryParam : queryParams) {
String[] param = queryParam.split("=");
// System.out.println("key: " + param[0] + " value: " + param[1]);
if (param[0].equals(key)) {
result = param[1];
break;
}
}
return result;
}
注意:上面的参数值有 =
会有 bug,建议使用下面的:文章源自浅海拾贝-https://blog.terwergreen.com/java-get-the-parameter-in-the-url-zbioxp.html
/**
* 获取url中的参数
*
* @param url 链接
* @param key 参数key
* @return 参数值
*/
public static String getParameterFromUrl(String url, String key) {
HashMap<String, String> urlMap = new HashMap<String, String>();
String queryString = StringUtils.substringAfter(url, "?");
for (String param : queryString.split("&")) {
urlMap.put(StringUtils.substringBefore(param, "="), StringUtils.substringAfter(param, "="));
}
return urlMap.get(key);
}
文章源自浅海拾贝-https://blog.terwergreen.com/java-get-the-parameter-in-the-url-zbioxp.html 相关文章
- 扫码加我微信
- 验证消息请输入:来自你的博客
- 我的微信公众号
- 微信扫一扫与我交流吧
评论