我这只是用post传过去 但是后台接收有问题 需要提交json格式 求大神 赐教 huoquCode.setClickable(false);
        UIUtils.countdownOneMin(huoquCode);
        String url ="http://192.168.0.151:8080/Platform/sms/captcha.do";
        String phone = et_register_user.getText().toString().trim();
        System.out.print("手机号"+phone);
        OkHttpUtils
                .post()
                .url(url)
                .addParams("phone_number", phone)
                .build()
                .execute(new StringCallback() {
                    @Override
                    public void onResponse(String response, int id) {
                        LogUtils.e("请求返回的数据~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"+response);
                        LogUtils.e(response);
                        Gson gson = new Gson();
                        SendMsmBean sendMsmBean = gson.fromJson(response, SendMsmBean.class);
                        /*if (sendMsmBean.status.equals("0")) {
                            ToastUtil.showShort(getContext(), sendMsmBean.info);
                        }*/
                    }
                    @Override
                    public void onError(Call call, Exception e, int id) {
                        Toast.makeText(getContext(), "失败", Toast.LENGTH_SHORT).show();
                    }
                });    }

解决方案 »

  1.   

    我是volley做的web请求,请求体是json,可以参考一下,代码是kotlin,不要问为什么,android只会kotlin...
    fun register(
                context: Context,
                email: String,
                password: String,
                complete: (Boolean) -> Unit) {
            val jsonBody = JSONObject()
            jsonBody.put("email", email)
            jsonBody.put("password", password)
            val requestBody = jsonBody.toString()        val registerRequest = object : StringRequest(
                    Method.POST,
                    URL_REGISTER,
                    Response.Listener { response ->
                        println(response)
                        complete(true)
                    },
                    Response.ErrorListener { error ->
                        Log.d("ERROR", "Could not register user")
                        complete(false)
                    }) {
                override fun getBodyContentType(): String {
                    return "application/json; charset=utf-8"
                }            override fun getBody(): ByteArray {
                    return requestBody.toByteArray()
                }
            }        Volley.newRequestQueue(context).add(registerRequest)
        }
      

  2.   

    没有语法高亮,只能用java的了
    fun register(
                context: Context,
                email: String,
                password: String,
                complete: (Boolean) -> Unit) {
            val jsonBody = JSONObject()
            jsonBody.put("email", email)
            jsonBody.put("password", password)
            val requestBody = jsonBody.toString()        val registerRequest = object : StringRequest(
                    Method.POST,
                    URL_REGISTER,
                    Response.Listener { response ->
                        println(response)
                        complete(true)
                    },
                    Response.ErrorListener { error ->
                        Log.d("ERROR", "Could not register user")
                        complete(false)
                    }) {
                override fun getBodyContentType(): String {
                    return "application/json; charset=utf-8"
                }            override fun getBody(): ByteArray {
                    return requestBody.toByteArray()
                }
            }        Volley.newRequestQueue(context).add(registerRequest)
        }
      

  3.   

    看不懂你写的 有android的代码吗?
      

  4.   

    这就是android的代码啊,以后java在安卓的开发迟早会被Kotlin取代的,尽早掌握语法也不是坏事,因为不喜欢java,就没学过
      

  5.   

    看样子用的是hongyang大神的okhttputil,参考链接
    json string的话用以下代码OkHttpUtils
        .postString()
        .url(url)
        .content(new Gson().toJson(new PhoneBean(phone)))
        .build()
        .....PhoneBean是需要传递的数据的类public class PhoneBean{
        private String phone_number;
        public PhoneBean(String phone_number) {
            this.phone_number= phone_number;
        }
        public String getPhone_number() {
            return phone_number;
        }    public void setPhone_number(String phone_number) {
            this.phone_number= phone_number;
        }}如果有多个参数,就添加多个参数并设置值进行传递
      

  6.   

    用Gson的 toJson()方法
      

  7.   

    可以试试volley,谷歌的官方库,现在你用的web请求库已经不维护了
      

  8.   

    为什么不试着将json字符串放在body体中post到后台呢?这很简单啊!