From 2d672ab6ae382fa0f685578559d702ef8d513245 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=9C=B0=E5=B9=B3=E7=BA=BF?= <22250530@qq.com> Date: Mon, 6 Jul 2015 11:38:52 +0800 Subject: [PATCH] --- .../wentch/redkale/net/http/HttpRequest.java | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/src/com/wentch/redkale/net/http/HttpRequest.java b/src/com/wentch/redkale/net/http/HttpRequest.java index 30d207631..3f31e53eb 100644 --- a/src/com/wentch/redkale/net/http/HttpRequest.java +++ b/src/com/wentch/redkale/net/http/HttpRequest.java @@ -384,11 +384,42 @@ public final class HttpRequest extends Request { return requestURI.substring(requestURI.lastIndexOf('/') + 1); } + /** + * + * 从prefix之后截取getRequestURI再对"/"进行分隔 + *
+ * @param prefix + * @return + */ public String[] getRequstURIPaths(String prefix) { if (requestURI == null || prefix == null) return new String[0]; return requestURI.substring(requestURI.indexOf(prefix) + prefix.length() + (prefix.endsWith("/") ? 0 : 1)).split("//"); } + public String getRequstURIPath(String prefix, String defvalue) { + if (requestURI == null || prefix == null) return defvalue; + int pos = requestURI.indexOf(prefix); + if (pos < 0) return defvalue; + String sub = requestURI.substring(pos + prefix.length()); + pos = sub.indexOf('/'); + return pos < 0 ? sub : sub.substring(0, pos); + } + + public short getRequstURIPath(String prefix, short defvalue) { + String val = getRequstURIPath(prefix, null); + return val == null ? defvalue : Short.parseShort(val); + } + + public int getRequstURIPath(String prefix, int defvalue) { + String val = getRequstURIPath(prefix, null); + return val == null ? defvalue : Integer.parseInt(val); + } + + public long getRequstURIPath(String prefix, long defvalue) { + String val = getRequstURIPath(prefix, null); + return val == null ? defvalue : Long.parseLong(val); + } + public String getRequestURI() { return requestURI; }