diff --git a/net.html b/net.html index b6dc0d700..b5b4dace1 100644 --- a/net.html +++ b/net.html @@ -248,7 +248,8 @@ //获取客户端地址IP public SocketAddress getRemoteAddress(); - //获取客户端地址IP, 与getRemoteAddres() 的区别在于:本方法优先取header中指定为RemoteAddress名的值,没有则返回getRemoteAddres()的getHostAddress()。 + //获取客户端地址IP, 与getRemoteAddres() 的区别在于: + //本方法优先取header中指定为RemoteAddress名的值,没有则返回getRemoteAddres()的getHostAddress()。 //本方法适用于服务前端有如nginx的代理服务器进行中转,通过getRemoteAddres()是获取不到客户端的真实IP。 public String getRemoteAddr(); @@ -273,6 +274,10 @@ //获取文件上传信息列表 等价于 getMultiContext().parts(); public Iterable<MultiPart> multiParts() throws IOException; + //设置当前用户信息, 通常在HttpServlet.preExecute方法里设置currentUser + //数据类型由@HttpUserType指定 + public <T> HttpRequest setCurrentUser(T user); + //获取当前用户信息 数据类型由@HttpUserType指定 public <T> T currentUser(); @@ -417,6 +422,12 @@ // 获取time参数: double point = request.getRequstURIPath("point:", 0.0); public double getRequstURIPath(String prefix, double defvalue); + //获取所有的header名 + public AnyValue getHeaders(); + + //将请求Header转换成Map + public Map<String, String> getHeadersToMap(Map<String, String> map); + //获取所有的header名 public String[] getHeaderNames(); @@ -465,6 +476,21 @@ //获取指定的header的double值, 没有返回默认double值 public double getDoubleHeader(String name, double defaultValue); + //获取请求参数总对象 + public AnyValue getParameters(); + + //将请求参数转换成Map + public Map<String, String> getParametersToMap(Map<String, String> map); + + //将请求参数转换成String, 字符串格式为: bean1={}&amp;id=13&amp;name=xxx + //不会返回null,没有参数返回空字符串 + public String getParametersToString(); + + //将请求参数转换成String, 字符串格式为: prefix + bean1={}&amp;id=13&amp;name=xxx + //拼接前缀, 如果无参数,返回的字符串不会含有拼接前缀 + //不会返回null,没有参数返回空字符串 + public String getParametersToString(String prefix); + //获取所有参数名 public String[] getParameterNames(); @@ -545,7 +571,7 @@ //获取request创建时间 public long getCreatetime(); } - +

  . HttpResponse 对象

@@ -562,7 +588,10 @@ //传入的CompletionHandler子类必须是public,且保证其子类可被继承且completed、failed可被重载且包含空参数的构造函数 public <H extends CompletionHandler> H createAsyncHandler(Class<H> handlerClass); - + + //获取ByteBuffer生成器 + public Supplier<ByteBuffer> getBufferSupplier(); + //设置状态码 public void setStatus(int status); @@ -599,7 +628,7 @@ //异步输出指定内容 public <A> void sendBody(ByteBuffer[] buffers, A attachment, CompletionHandler<Integer, A> handler); - + //关闭HTTP连接,如果是keep-alive则不强制关闭 public void finish(); @@ -609,9 +638,17 @@ //将对象以JSON格式输出 public void finishJson(Object obj); + //将对象数组用Map的形式以JSON格式输出 + //例如: finishMap("a",2,"b",3) 输出结果为 {"a":2,"b":3} + public void finishMapJson(final Object... objs); + //将对象以JSON格式输出 public void finishJson(JsonConvert convert, Object obj); + //将对象数组用Map的形式以JSON格式输出 + //例如: finishMap("a",2,"b",3) 输出结果为 {"a":2,"b":3} + public void finishMapJson(final JsonConvert convert, final Object... objs); + //将对象以JSON格式输出 public void finishJson(Type type, Object obj); @@ -638,16 +675,25 @@ //将HttpResult的结果对象以JSON格式输出 public void finishJson(final HttpResult result); - + //将HttpResult的结果对象以JSON格式输出 - public void finishJson(final JsonConvert convert, final HttpResult result) ; - + public void finishJson(final JsonConvert convert, final HttpResult result); + //将指定字符串以响应结果输出 public void finish(String obj); //以指定响应码附带内容输出, message 可以为null public void finish(int status, String message); + //将结果对象输出 + public void finish(final Object obj); + + //将结果对象输出 + public void finish(final Convert convert, final Object obj); + + //将结果对象输出 + public void finish(final Convert convert, final Type type, final Object obj); + //以304状态码输出 public void finish304(); @@ -681,7 +727,7 @@ public void recycleListener(BiConsumer<HttpRequest, HttpResponse> recycleListener); } - +

  . WebSocket 对象