繁体   English   中英

使用有效载荷 Volley 发送 GET 请求

[英]Sending a GET request with payload Volley

我想在 Android Studio 中使用 Volley 发出一个 GET 请求,在这个请求中我想包含一个主体。 问题是在使用GET请求时,服务器中的body为None (我使用的是Flask)。 另一方面,当使用 POST 方法时,正文正确到达服务器。 这是我的代码:

        RequestQueue queue = Volley.newRequestQueue(getApplicationContext());
        String url = Globals.WINGS_VEHICLES_URL;

        JSONObject payload = new JSONObject();
        try {
            payload.put("user_id", Globals.USER_ID);
        } catch (JSONException e) {
            e.printStackTrace();
        }

        final String requestBody = payload.toString();
        System.out.println(requestBody);

        StringRequest stringRequest = new StringRequest(Request.Method.POST, url, new Response.Listener<String>() {
            @Override
            public void onResponse(String response) {
                System.out.println(response);
            }
        }, new Response.ErrorListener() {
            @Override
            public void onErrorResponse(VolleyError error) {
                error.printStackTrace();
            }
        }){
            @Override
            public String getBodyContentType() {
                return "application/json";
            }

            @Override
            public byte[] getBody() {
                return requestBody.getBytes();
            }


        };

        stringRequest.setRetryPolicy(new DefaultRetryPolicy(0, 0, DefaultRetryPolicy.DEFAULT_BACKOFF_MULT));
        queue.add(stringRequest);

这是凌空限制,还是我做错了什么? 假设我使用JSONObject作为主体,非空。

请检查这个答案
带有请求正文的 HTTP GET

并使用POST Http方法发送Body!!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM