📄 httpparameterparser.java
字号:
/*
* @(#)HttpParameterParser.java 1.00 2005-9-7
*
* Copyright 2005 BeanSoft Studio. All rights reserved.
* PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
*/
package studio.beansoft.net;
import java.util.Hashtable;
import java.util.StringTokenizer;
import studio.beansoft.util.logging.Logger;
/**
* HttpParameterParser parse a HTTP GET string and returns parameters in it.
*
* Chinese documents:
* 分析一个 HTTP GET 字符串并取出里面的参数.
*
* @author BeanSoft
* @version 1.00 2005-9-7
*/
public class HttpParameterParser {
/**
* Parse a uri string in http GET format and fetchs parameters in it.
* @param uri - The request URI, eg:
* screen.jsp?view=true&mouse_events=112,99,1,501,1126072479094|112,99,1,502,112607
2479156|
* @return a Hashtable contains parameter infos, eg: view=true,mouse_events=...
*/
public static Hashtable parseURIParameters(String uri) {
Hashtable params = new Hashtable();
if(uri == null) return params;
if(uri.indexOf('?') != -1) {
uri = uri.substring(uri.indexOf('?') + 1);
}
StringTokenizer token = new StringTokenizer(uri, "&");
while(token.hasMoreElements()) {
String value = token.nextElement().toString();
int index = value.indexOf('=');
if(index != -1) {
params.put(value.substring(0, index), value.substring(index + 1));
}
else {
params.put(value, "");
}
}
return params;
}
/**
* @param args
*/
public static void main(String[] args) {
String uri = "GET /screen.jsp?view=true&mouse_events=112,99,1,501,1126072479094|112,99,1,502,1126072479156| HTTP/1.1";
String resource = uri.substring(uri.indexOf('/')+1, uri.lastIndexOf('/')-5);
Logger.getLogger("HttpMonitorServer").debug("Request: " + resource);
Hashtable param = parseURIParameters(resource);
System.out.println(param.get("mouse_events"));
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -