Android(Kotlin) – CookieHandler不能使用POST方法,但使用GET工作

我的应用程序中有两个POST方法。 一个是我把CookieHandler(代码: CookieHandler.setDefault(CookieManager()) )的CookieHandler.setDefault(CookieManager()) 。 在这个活动后,我得到了一些GET方法和cookies工作,但是当我想要使用另一个POST方法,我得到AuthFailurEerror 。 这是我的代码:

LoginActivity:

 // this line is in onCreate method CookieHandler.setDefault(CookieManager()) private fun login2() { val req = object : StringRequest(Request.Method.POST, LOGIN_API_URL, Response.Listener { response -> Toast.makeText(this, response, Toast.LENGTH_LONG).show() val user = Intent(this, UserActivity::class.java) startActivity(user) }, Response.ErrorListener { e -> Toast.makeText(this, e.toString(), Toast.LENGTH_LONG).show() }) { public override fun getParams(): Map { val params = HashMap() params.put("username", username.text.toString()) params.put("password", passwd.text.toString()) return params } override fun getBodyContentType(): String { return "application/x-www-form-urlencoded"; } } req.retryPolicy = DefaultRetryPolicy(60000, DefaultRetryPolicy.DEFAULT_MAX_RETRIES, DefaultRetryPolicy.DEFAULT_BACKOFF_MULT) volleyRequest!!.add(req) } 

SecondActivity

 private fun aktualizacja2() { val req = object : StringRequest(Request.Method.POST, UPDATE_URL, Response.Listener { response -> Toast.makeText(this, response.toString(), Toast.LENGTH_LONG).show() }, Response.ErrorListener { e -> Toast.makeText(this, e.toString(), Toast.LENGTH_LONG).show() }) { public override fun getParams(): Map { val params = HashMap() params.put("librus_user", usernameEdit.text.toString()) params.put("librus_pswd", passwordEdit.text.toString()) return params } override fun getBodyContentType(): String { return "application/x-www-form-urlencoded"; } } } 

非常感谢您的帮助 !