Android Kotlin – Volley意外的响应代码400
我使用Django制作了REST API,现在我想将它连接到android。 我正在使用Kotlin和Volley库。 我创建的代码,我仍然得到这个错误:
E / Volley:BasicNetwork.performRequest:用于http://laude.ct8.pl/api/user/login/的意外响应代码400。
这是我的Kotlin代码:
val jsonObj = JSONObject() val LOGIN_API_URL = "http://laude.ct8.pl/api/user/login/" loginBtn.setOnClickListener { jsonObj.put("username", username.text) jsonObj.put("password", passwd.text) val que = Volley.newRequestQueue(this@MainActivity) val req = JsonObjectRequest(Request.Method.POST, LOGIN_API_URL, Response.Listener { response -> Toast.makeText(this@MainActivity, response.toString(), Toast.LENGTH_LONG).show() }, Response.ErrorListener { error -> Toast.makeText(this@MainActivity, error.toString(), Toast.LENGTH_LONG).show() }) que.add(req) }
我用Content-Type
看到了这个问题,所以我尝试了这一行,并将其添加到jsonObj.put("password", passwd.text)
。
这里是这一行: jsonObj.put("Content-Type", "application/json")
。
这里有一些测试登录数据:
用户名:testUser1232
密码:test123123
非常感谢您的帮助!
当你创建JsonObjectRequest时,你不会把jsonObj
传递给它。
尝试:
val req = JsonObjectRequest(Request.Method.POST, LOGIN_API_URL, jsonObj, Response.Listener { response -> Toast.makeText(this@MainActivity, response.toString(), Toast.LENGTH_LONG).show() }, Response.ErrorListener { error -> Toast.makeText(this@MainActivity, error.toString(), Toast.LENGTH_LONG).show() })