首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在android直播间volley中添加URL鉴权token的HTTP头部API密钥?

如何在android直播间volley中添加URL鉴权token的HTTP头部API密钥?
EN

Stack Overflow用户
提问于 2016-05-05 20:18:59
回答 1查看 1.2K关注 0票数 1

我已经研究了这么多示例和代码,但仍然得到volley JsonArrayRequest中Auth Failed的响应。有没有人能说出我做错了什么。

下面是我的代码:

代码语言:javascript
复制
RequestQueue queue = Volley.newRequestQueue(act);
    if (isOnline()) {
        pDialog.show();
        JsonArrayRequest jsonObjReq = new JsonArrayRequest(Request.Method.POST,
                url, (String) null,
                new Response.Listener<JSONArray>() {

                    @Override
                    public void onResponse(JSONArray response) {
                        Log.d("JSONArray Response", response.toString());

                        try {
                            listener.onResponse(response);
                        } catch (JSONException e) {
                            e.printStackTrace();
                        }
                        pDialog.hide();
                    }
                }, new Response.ErrorListener() {

            @Override
            public void onErrorResponse(VolleyError error) {
                VolleyLog.d("JSONArray VolleyError", "Error: " + error.getMessage());
                pDialog.hide();

                if (error instanceof TimeoutError) {
                    listener.onError(timeout, timeoutTitle);
                Toast.makeText(act,
                        "Bad Network, Try again",
                        Toast.LENGTH_LONG).show();
                } else if (error instanceof NoConnectionError) {
                    listener.onError(poorNetwork, poorNetworkTitle);
                Toast.makeText(act,
                        "Bad Network, Try again",
                        Toast.LENGTH_LONG).show();
                } else if (error instanceof AuthFailureError) {
                    listener.onError(authorizationFailed, authorizationFailedTitle);
                Toast.makeText(act,
                        "Auth failed",
                        Toast.LENGTH_LONG).show();
                } else if (error instanceof ServerError) {
                    listener.onError(serverNotResponding, serverNotRespondingTitle);
               /* Toast.makeText(act,
                        "Server Not Responding",
                        Toast.LENGTH_LONG).show();*/
                } else if (error instanceof NetworkError) {
                    listener.onError(networkErrorMessage, networkErrorTitle);
                Toast.makeText(act,
                        "Network Error",
                        Toast.LENGTH_LONG).show();
                } else if (error instanceof ParseError) {
                    listener.onError(parseError, parseErrorTitle);
                Toast.makeText(act,
                        "try again"+error.getMessage(),
                        Toast.LENGTH_LONG).show();
                }


            }

        })
        {
            @Override
            protected Map<String, String> getParams() throws AuthFailureError {
                Map<String, String> params = new HashMap<String, String>();
                //add params <key,value>
                params,put("api_key", "TOKEN");
                params.put("username", "vicky");
                params.put("password", "test123");
                return params;
            }

        }
                ;queue.add(jsonObjReq);

我被困了一天。

EN

回答 1

Stack Overflow用户

发布于 2016-05-08 07:14:27

由于您想要添加到标头,请使用getHeaders()而不是getParams()。

希望它能帮上忙!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37050449

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档