请求数据

目录

各种Request介绍

想要发起一个请求就要有请求对象,NoHttp的理念是你想请求什么数据,就构造什么样的请求对象。任何请求对象都支持发送任何数据,关于提交数据、提交参数文档待补充。

NoHttp支持请求String、JsonObject、JsonArray、Bitmap、byte[],支持自定义请求,例如JavaBean、FastJson、Gson等。

StringRequest

  • 下面的方式将创建一个请求方法为GET的StringRequest。
    Request<String> request = NoHttp.createStringRequest(url);
    
  • 如果要创建其它请求方法的StringRequest,第二个参数传入对应的Method即可。
    例如POST请求:
    Request<String> request = NoHttp.createStringRequest(url, RequestMethod.POST);
    

    JsonObjectRequest

  • 下面的方式将创建一个请求方法为GET的JsonObjectRequest。
    Request<JSONObject> request = NoHttp.createJsonObjectRequest(url);
    
  • 如果要创建其它请求方法的JsonObjectRequest,第二个参数传入对应的Method即可。
    例如POST请求:
    Request<JSONObject> request = NoHttp.createJsonObjectRequest(url,  RequestMethod.POST);
    

    JsonArrayRequest

  • 下面的方式将创建一个请求方法为GET的JsonArrayRequest。
    Request<JSONArray> request = NoHttp.createJsonArrayRequest(url);
    
  • 如果要创建其它请求方法的JsonArrayRequest,第二个参数传入对应的Method即可。
    例如POST请求:
    Request<JSONArray> request = NoHttp.createJsonArrayRequest(url, RequestMethod.POST);
    

    BitmapRequest

  • 下面的方式将创建一个请求方法为GET的BitmapRequest
    Request<Bitmap> request = NoHttp.createBitmapRequest(url);
    
  • 如果要创建其它请求方法的BitmapRequest,第二个参数传入对应的Method即可
    例如POST请求:
    Request<Bitmap> request = NoHttp.createBitmapRequest(url, RequestMethod.POST);
    

    ByteArrayRequest

  • 下面的方式将创建一个请求方法为GET的ByteArrayRequest。
    Request<byte[]> request = NoHttp.createByteArrayRequest(url);
    
  • 如果要创建其它请求方法的ByteArrayRequest,第二个参数传入对应的Method即可。
    例如POST请求:
    Request<byte[]> request = NoHttp.createByteArrayRequest(url, RequestMethod.POST);
    

自定义请求FastJson、JavaBean

请看这里

请求优先级

NoHttp的队列支持请求优先级,通过以下代码给某个请求设置请求优先级:

request.setPriority(Priority.DEFAULT);

NoHttp有以下四个优先级别,默认请求的优先级别是DEFAULT

public enum Priority {
    LOW, DEFAULT, HEIGHT, HIGHEST
}
说明
HIGHEST优先级别最高,一般用于队列中有HEIGHT的请求时,需要立即执行的请求
HEIGHT优先级别高,低于HIGHEST
DEFAULT默认值,低于HEIGHT
LOW优先级最低

推荐阅读
1. NoHttp的队列异步请求基本使用
2. NoHttp队列特性详解

文章导航