java - Volley jsonObjectRequest如何处理字符串结果

标签 java android android-volley

我正在尝试对页面执行 POST 请求,请求所需的参数必须采用 json 格式,因为它们采用以下格式:

{
   a: 1,
   b: "ASD",
   c: ["A","B"]
}

据我所知,这不能转换为 Map<String, String> 对象,这是为了制作 StringRequest 而不是 JsonObjectRequest 所需要的,话虽这么说,有什么方法可以发送 jsonObject 作为参数并且仍然能够处理来自服务器的字符串响应(使用 volley)?

我已经阅读了这些问题:

How to handle string response from php using android volley JsonObjectRequest [com.android.volley.ParseError: org.json.JSONException]?

-这个没有得到有效的答案

How to get string response from php using android volley JsonObjectRequest?

-这个没有回答我的问题

Volley - POST/GET parameters

-这个对自定义请求有一个有希望的答案,但它的作用与我尝试的相反,并且我未能成功创建自己的自定义请求来接受我需要的参数。

最佳答案

结果是发布类似 a[0]:"1" 的内容和a[1]:"2"在 hashmap params 中与 a: ["1","2"] 相同所以我很好用 StringRequest 因为它使用 <String,String>参数映射,据说我最终使用了这个:

StringRequest xx = new StringRequest(Request.Method.POST, getAjaxUrlForFunction("Login"), new Response.Listener<String>() {
            @Override
            public void onResponse(String response) {
                Log.w("RESPONSE",response);
                callback.onSucces(response);
            }
        }, new Response.ErrorListener() {
            @Override
            public void onErrorResponse(VolleyError error) {
                error.printStackTrace();
                callback.onError(error);
            }
        }){
            @Override
            protected Map<String, String> getParams() throws AuthFailureError {
                Map<String,String> paramss = new HashMap<String, String>();
                paramss.put("funcion","login");
                paramss.put("ajax_request","controller");
                paramss.put("args[0]", name);
                paramss.put("args[1]", password);
                return paramss;
            }
        };

关于java - Volley jsonObjectRequest如何处理字符串结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58758532/

相关文章:

java - Firebase (Android) : image not being displayed on my listView, 一旦我第一次将它上传到存储

android - 无法使用 Volley 显示两个自定义 ListView

android - 在android中上传文件以及其他字符串参数

java - 如何配置mvc spring bean Controller 的属性?

java - 如果 webelement 值与 Excel 值匹配如何打破循环

android - 应用卸载 Flutter 时不会删除应用数据库

java - RuntimeException 找不到布局 XML 资源

android - 如何在成功响应 Volley Android 中获取状态代码

java - 如何发送 Maven 构建的电子邮件通知

没有应用服务器的 Java EE