程序包 qhs.interfaces

接口 HTTPRequest


  • public interface HTTPRequest
    HTTPRequest接口的实现类用于缓存来自浏览器等客户端的http请求。 qhs内置有本接口的实现类,开发人员无需开发本接口的实现类。 在服务模块类的invoke(qhs.interfaces.ThreadContext tc)方法的内部,用户代码可以调用 tc.getRequest()来 返回一个HTTPRequest接口类型对象。
    • 方法概要

      所有方法 实例方法 抽象方法 
      修饰符和类型 方法 说明
      RequestHeader getHeader​(int index)
      返回存在于http请求的、指定索引号的头域。
      int getHeaderCount()
      返回存在于http请求的头域个数。
      byte[] getPayloadBody()
      返回http请求的载荷体。
      int getPayloadBody​(byte[] buffer)
      复制http请求的载荷体到缓存区,并且返回已复制字节的个数。
      int getPayloadBodyLength()
      返回http请求的载荷体的长度。
      RequestURI getRequestURI()
      返回缓存有请求URI(Request-URI)的RequestURI接口类型对象。
      boolean isGET()
      判断请求方法是否为GET。
      boolean isPOST()
      判断请求方法是否为POST。
      void parsePayloadBody​(MFormDataListener listener, byte[] tempByteBuffer)
      把http请求的载荷体当作为multipart/form-data媒体类型的表单数据(form data) 并且创建、调用数据分析器对表单数据进行分析。
      void parsePayloadBody​(UFormDataListener listener, byte[] tempByteBuffer, char[] tempCharBuffer)
      把http请求的载荷体当作为application/x-www-form-urlencoded媒体类型的表单数据(form data) 并且创建调用数据分析器对表单数据进行分析。
    • 方法详细资料

      • isGET

        boolean isGET()
        判断请求方法是否为GET。
        返回:
        true值表示请求方法为GET,false值表示请求方法不是GET。
      • isPOST

        boolean isPOST()
        判断请求方法是否为POST。
        返回:
        true值表示请求方法为POST,false值表示请求方法不是POST。
      • getRequestURI

        RequestURI getRequestURI()
        返回缓存有请求URI(Request-URI)的RequestURI接口类型对象。
        返回:
        一个RequestURI接口类型对象。
      • getHeaderCount

        int getHeaderCount()
        返回存在于http请求的头域个数。
        返回:
        头域个数。
      • getHeader

        RequestHeader getHeader​(int index)
        返回存在于http请求的、指定索引号的头域。
        参数:
        index - 头域的索引号。索引号为0的头域是第1个头域,索引号为1的头域是第2个头域等,以此类推。
        返回:
        如果index值小于头域个数,就返回一个存放头域的RequestHeader类型对象,否则返回null。
      • getPayloadBodyLength

        int getPayloadBodyLength()
        返回http请求的载荷体的长度。
        返回:
        载荷体的长度。
      • getPayloadBody

        int getPayloadBody​(byte[] buffer)
        复制http请求的载荷体到缓存区,并且返回已复制字节的个数。
        参数:
        buffer - 用于存放载荷体的缓存区。
        返回:
        如果buffer数组的长度小于载荷体的长度,就返回buffer数组的长度,否则返回载荷体的长度。
      • getPayloadBody

        byte[] getPayloadBody()
        返回http请求的载荷体。
        返回:
        载荷体。
      • parsePayloadBody

        void parsePayloadBody​(UFormDataListener listener,
                              byte[] tempByteBuffer,
                              char[] tempCharBuffer)
                       throws java.lang.Exception
        把http请求的载荷体当作为application/x-www-form-urlencoded媒体类型的表单数据(form data) 并且创建调用数据分析器对表单数据进行分析。
        参数:
        listener - 一个监听器,监听器用于接收来自数据分析器的事件。
        tempByteBuffer - 临时字节缓存区。
        tempCharBuffer - 临时字符缓存区。
        抛出:
        java.lang.Exception - 载荷体不合格。
      • parsePayloadBody

        void parsePayloadBody​(MFormDataListener listener,
                              byte[] tempByteBuffer)
                       throws java.lang.Exception
        把http请求的载荷体当作为multipart/form-data媒体类型的表单数据(form data) 并且创建、调用数据分析器对表单数据进行分析。
        参数:
        listener - 一个监听器,监听器用于接收来自数据分析器的事件。
        tempByteBuffer - 临时字节缓存区。
        抛出:
        java.lang.Exception - 载荷体不合格。