diff --git a/src/main/java/org/redkale/net/http/HttpRequest.java b/src/main/java/org/redkale/net/http/HttpRequest.java
index 6b09ee6e7..b3a9a4861 100644
--- a/src/main/java/org/redkale/net/http/HttpRequest.java
+++ b/src/main/java/org/redkale/net/http/HttpRequest.java
@@ -27,11 +27,6 @@ import static org.redkale.util.Utility.isNotEmpty;
/**
* Http请求包 与javax.servlet.http.HttpServletRequest 基本类似。
* 同时提供json的解析接口: public Object getJsonParameter(Type type, String name)
- * Redkale提倡带简单的参数的GET请求采用类似REST风格, 因此提供了 getPathParam 系列接口。
- * 例如简单的翻页查询
- * /pipes/user/query/offset:0/limit:20
- * 获取页号: int offset = request.getPathParam("offset:", 0);
- * 获取行数: int limit = request.getPathParam("limit:", 10);
*
*
详情见: https://redkale.org
*
@@ -2120,8 +2115,10 @@ public class HttpRequest extends Request {
* 截取getRequestPath最后的一个/后面的部分
*
* @return String
+ * @deprecated 2.8.0
*/
@ConvertDisabled
+ @Deprecated(since = "2.8.0")
public String getPathLastParam() {
if (requestPath == null) {
return "";
@@ -2136,7 +2133,9 @@ public class HttpRequest extends Request {
*
* @param defvalue 默认short值
* @return short值
+ * @deprecated 2.8.0
*/
+ @Deprecated(since = "2.8.0")
public short getPathLastParam(short defvalue) {
String val = getPathLastParam();
if (val.isEmpty()) {
@@ -2157,7 +2156,9 @@ public class HttpRequest extends Request {
* @param radix 进制数
* @param defvalue 默认short值
* @return short值
+ * @deprecated 2.8.0
*/
+ @Deprecated(since = "2.8.0")
public short getPathLastParam(int radix, short defvalue) {
String val = getPathLastParam();
if (val.isEmpty()) {
@@ -2177,7 +2178,9 @@ public class HttpRequest extends Request {
*
* @param defvalue 默认int值
* @return int值
+ * @deprecated 2.8.0
*/
+ @Deprecated(since = "2.8.0")
public int getPathLastParam(int defvalue) {
String val = getPathLastParam();
try {
@@ -2195,7 +2198,9 @@ public class HttpRequest extends Request {
* @param radix 进制数
* @param defvalue 默认int值
* @return int值
+ * @deprecated 2.8.0
*/
+ @Deprecated(since = "2.8.0")
public int getPathLastParam(int radix, int defvalue) {
String val = getPathLastParam();
try {
@@ -2212,7 +2217,9 @@ public class HttpRequest extends Request {
*
* @param defvalue 默认float值
* @return float值
+ * @deprecated 2.8.0
*/
+ @Deprecated(since = "2.8.0")
public float getPathLastParam(float defvalue) {
String val = getPathLastParam();
try {
@@ -2229,7 +2236,9 @@ public class HttpRequest extends Request {
*
* @param defvalue 默认long值
* @return long值
+ * @deprecated 2.8.0
*/
+ @Deprecated(since = "2.8.0")
public long getPathLastParam(long defvalue) {
String val = getPathLastParam();
try {
@@ -2247,7 +2256,9 @@ public class HttpRequest extends Request {
* @param radix 进制数
* @param defvalue 默认long值
* @return long值
+ * @deprecated 2.8.0
*/
+ @Deprecated(since = "2.8.0")
public long getPathLastParam(int radix, long defvalue) {
String val = getPathLastParam();
try {
@@ -2264,7 +2275,9 @@ public class HttpRequest extends Request {
*
* @param defvalue 默认double值
* @return double值
+ * @deprecated 2.8.0
*/
+ @Deprecated(since = "2.8.0")
public double getPathLastParam(double defvalue) {
String val = getPathLastParam();
try {
@@ -2281,7 +2294,9 @@ public class HttpRequest extends Request {
*
* @param prefix 前缀
* @return String[]
+ * @deprecated 2.8.0
*/
+ @Deprecated(since = "2.8.0")
public String[] getPathParams(String prefix) {
if (requestPath == null || prefix == null) {
return new String[0];
@@ -2299,7 +2314,9 @@ public class HttpRequest extends Request {
* @param prefix prefix段前缀
* @param defvalue 默认值
* @return prefix截断后的值
+ * @deprecated 2.8.0
*/
+ @Deprecated(since = "2.8.0")
public String getPathParam(String prefix, String defvalue) {
if (requestPath == null || prefix == null || prefix.isEmpty()) {
return defvalue;
@@ -2321,7 +2338,9 @@ public class HttpRequest extends Request {
* @param prefix prefix段前缀
* @param defvalue 默认short值
* @return short值
+ * @deprecated 2.8.0
*/
+ @Deprecated(since = "2.8.0")
public short getPathParam(String prefix, short defvalue) {
String val = getPathParam(prefix, null);
try {
@@ -2340,7 +2359,9 @@ public class HttpRequest extends Request {
* @param prefix prefix段前缀
* @param defvalue 默认short值
* @return short值
+ * @deprecated 2.8.0
*/
+ @Deprecated(since = "2.8.0")
public short getPathParam(int radix, String prefix, short defvalue) {
String val = getPathParam(prefix, null);
try {
@@ -2359,7 +2380,9 @@ public class HttpRequest extends Request {
* @param prefix prefix段前缀
* @param defvalue 默认int值
* @return int值
+ * @deprecated 2.8.0
*/
+ @Deprecated(since = "2.8.0")
public int getPathParam(String prefix, int defvalue) {
String val = getPathParam(prefix, null);
try {
@@ -2379,7 +2402,9 @@ public class HttpRequest extends Request {
* @param prefix prefix段前缀
* @param defvalue 默认int值
* @return int值
+ * @deprecated 2.8.0
*/
+ @Deprecated(since = "2.8.0")
public int getPathParam(int radix, String prefix, int defvalue) {
String val = getPathParam(prefix, null);
try {
@@ -2397,7 +2422,9 @@ public class HttpRequest extends Request {
* @param prefix prefix段前缀
* @param defvalue 默认float值
* @return float值
+ * @deprecated 2.8.0
*/
+ @Deprecated(since = "2.8.0")
public float getPathParam(String prefix, float defvalue) {
String val = getPathParam(prefix, null);
try {
@@ -2415,7 +2442,9 @@ public class HttpRequest extends Request {
* @param prefix prefix段前缀
* @param defvalue 默认long值
* @return long值
+ * @deprecated 2.8.0
*/
+ @Deprecated(since = "2.8.0")
public long getPathParam(String prefix, long defvalue) {
String val = getPathParam(prefix, null);
try {
@@ -2434,7 +2463,9 @@ public class HttpRequest extends Request {
* @param prefix prefix段前缀
* @param defvalue 默认long值
* @return long值
+ * @deprecated 2.8.0
*/
+ @Deprecated(since = "2.8.0")
public long getPathParam(int radix, String prefix, long defvalue) {
String val = getPathParam(prefix, null);
try {
@@ -2452,7 +2483,9 @@ public class HttpRequest extends Request {
* @param prefix prefix段前缀
* @param defvalue 默认double值
* @return double值
+ * @deprecated 2.8.0
*/
+ @Deprecated(since = "2.8.0")
public double getPathParam(String prefix, double defvalue) {
String val = getPathParam(prefix, null);
try {
diff --git a/src/main/java/org/redkale/net/http/Rest.java b/src/main/java/org/redkale/net/http/Rest.java
index 6c0fdc4f8..d585b2a67 100644
--- a/src/main/java/org/redkale/net/http/Rest.java
+++ b/src/main/java/org/redkale/net/http/Rest.java
@@ -1472,6 +1472,10 @@ public final class Rest {
if (n == null && ptype == userType) {
n = "&"; // 用户类型特殊处理
}
+ if (n != null && n.startsWith("#")) { // 不再支持/name:value路径, path里包含参数会增加网关限流复杂度
+ throw new RedkaleException("found illegal @RestParam name (" + n + ") in method " + method
+ + ", serviceType is " + serviceType.getName());
+ }
if (n == null) {
if (param.isNamePresent()) {
n = param.getName();
@@ -2597,7 +2601,7 @@ public final class Rest {
{ // 设置 Annotation HttpMapping
boolean reqpath = false;
for (Object[] ps : paramlist) {
- if ("#".equals((String) ps[1])) {
+ if ("#".equals(ps[1])) {
reqpath = true;
break;
}