获取凌空请求标记作为响应

时间:2017-11-07 12:44:33

标签: android json android-volley

我正在使用排球,我有一个队列来调用一些API。队列从数据库填充。

在向jsonObjectRequest.setTag(id);请求队列添加请求之前,我通过调用

设置请求标记

database

作为回应,我想从HttpRequest中删除列id等于请求标记ID的列。

那么,我如何在response import { Component, NgZone } from "@angular/core"; ... constructor(private zone: NgZone) { } firebase.addValueEventListener(result => { this.zone.run(() => { this.router.navigate(['/order'], { clearHistory:true }); ]) }, path) 中获取请求标记?

1 个答案:

答案 0 :(得分:5)

首先创建一个侦听器,从您的volly类中提供响应

/** Callback interface for delivering parsed responses. */
public interface Listener {
    /** Called when a response is received. */
    public void onResponse(Object tag, JSONObject response);
    public void onErrorResponse(Object tag, VolleyError error);
}

现在创建如下方法,传递监听器和标签并调用volly请求。作为回应,您可以同时获得标记和响应。

public void callApi(String url, final Listener listener, final Object tag){
    JsonObjectRequest jsonObjReq = new JsonObjectRequest(Request.Method.GET,
            url, null,
            new Response.Listener<JSONObject>() {

                @Override
                public void onResponse(JSONObject response) {
                    listener.onResponse(tag,response);
                }
            }, new Response.ErrorListener() {

        @Override
        public void onErrorResponse(VolleyError error) {
            listener.onErrorResponse(tag,error);
        }
    });

    // Adding request to request queue
    AppController.getInstance().addToRequestQueue(jsonObjReq);
}

它只是示例代码,您可以根据您的要求进行修改。如果您需要任何帮助评论。