天天看點

Android添加Header請求參數執行個體,java響應header請求實作demo5、開始請求,添加了header請求參數和常用請求參數

1、首先添加AsyncHttpClient.jar包到libs檔案夾下

Android添加Header請求參數執行個體,java響應header請求實作demo5、開始請求,添加了header請求參數和常用請求參數

2、初始化請求類以及響應回調類

private AsyncHttpClient client;
private AsyncHttpResponseHandler asyncHttpResponseHandler;
           

3、網絡權限

<!-- 網絡連結 -->
<uses-permission android:name="android.permission.INTERNET" />
           

4、執行個體化響應類

/**
 * 設定請求響應
 */
private void setListener(final Context context) {
    asyncHttpResponseHandler = new AsyncHttpResponseHandler() {

        @Override
        public void onSuccess(int i, Header[] headers, byte[] bytes) {
            String jsonStr = new String(bytes);
            Log.i("lgq","sss===="+jsonStr);
        }

        @Override
        public void onFailure(int i, Header[] headers, byte[] bytes, Throwable throwable) {
            String jsonStr = new String(bytes);
            Log.i("lgq","sssbbb===="+jsonStr);
        }
    };
}
           

5、開始請求,添加了header請求參數和常用請求參數

注:如果是HttpURLConnection請求,添加header請求參數方法是:

conn.setRequestProperty("headkey","headervalue");

public void httpheader(){
    client = new AsyncHttpClient();

    client.addHeader("headkey", "22aa");//添加header請求參數方法

    RequestParams requestParams = new RequestParams();

    requestParams.add("password", "123");//添加常用請求參數方法

    String strUrl = "http://192.168.0.110:8080/servletDemo/testa?method=login&username=xzgkof&";

    client.post(this, strUrl, requestParams, asyncHttpResponseHandler);//開始請求
}
           

6、Android 請求結果:

02-22 11:09:19.492 21796-21796/com.tianxin.httpheader I/lgq: sss===={"msg":["登入成功!錘子進來"]}

二、附java響應實作代碼

    public JSONObject formatJsonData(String key,List<?> list){

        JSONObject json = new JSONObject();

        JSONArray  ja = JSONArray.fromObject(list);

         json.element(key, ja);

          return json;

    } 

    public void login(HttpServletRequest request, HttpServletResponse response) 

            throws ServletException, IOException{

                String usname = request.getParameter("username");//擷取常用方法請求參數

                String psword = request.getParameter("password");

                System.out.println("hhhhhhhhhhhhhhhhh========"+request.getHeader("headkey"));//擷取header請求參數

                HttpSession session = request.getSession();

                List<Object> msgList = new ArrayList<Object>();

//                if (session.isNew()) {

//                    msgList.add("isNew==="+session.getId());

//                }else {

//                    msgList.add("==="+session.getId());

//                }

                if(usname != null || psword != null){

                    if(session.getAttribute("usname") != null){

                          if(session.getAttribute("usname").equals(usname)

                           &&session.getAttribute("psword").equals(psword)){

                              okreString ="登入成功";

                                msgList.add("登入成功!上面水電費");

                          }else{

                                msgList.add("登入失敗!使用者名密碼不可為空!");

                                okreString ="登入失敗了";

                          }

                    }else{

                        if(usname.equals("xzgkof")&& psword.equals("123")){

                                    msgList.add("登入成功!錘子進來");

                                    session.setAttribute("usname", usname);

                                    session.setAttribute("psword", psword);

                                    session.setMaxInactiveInterval(30*60);//設定機關為秒,設定為-1永不過期    

                                    okreString ="登入成功111";

                                }else{

                                    msgList.add("登入失敗!使用者名或密碼錯誤!");

                                     okreString ="登入失敗了1111";

                                    //session.setMaxInactiveInterval(1);

                                    //request.getRequestDispatcher("/login.jsp").forward(request, response);

                                }

                    }     

                }else{

                       msgList.add("使用者名,密碼不可為空!");

                }

                List<Object> msgList22 = new ArrayList<Object>();

                msgList22.add("你的過第三方");

                response.getWriter().print(formatJsonData("msg",msgList));        

//                response.getWriter().print(createJSONObject());    

    }

java擷取header請求參數結果:

Android添加Header請求參數執行個體,java響應header請求實作demo5、開始請求,添加了header請求參數和常用請求參數

 demo下載下傳連結:https://download.csdn.net/download/meixi_android/10970252

demo雲盤連結:https://pan.baidu.com/s/1wor8EZ7RjSddDK2Pw44C4g

雲盤密碼:回複QQ——1085220040