用Volley发送应用程序/ x-www-form-urlencode无效

时间:2019-03-18 12:34:29

标签: android rest http kotlin android-volley

因此,我找到了一种在Volley中发送带有x-www-form-urlencoded的POST请求的方法,并在stackoverflow中找到了以下帖子

Send form-urlencoded parameters in post request android volley

但是,当我尝试执行几乎相同的操作时,由于某种原因它不起作用。

我创建了一个新类,该类扩展了StringRequest并覆盖了getBodyContentTypegetParams方法

那之后我的课看起来像这样:

protected inner class LoginRequest(val data : LoginData,callback: (String) -> Unit,errorCallback: (VolleyError) -> Unit) : StringRequest(Request.Method.POST,LOGIN_URL,callback,errorCallback){
    override fun getParams(): HashMap<String, String>{
        //Erstellen der passenden Parameter
        val map =  HashMap<String,String>()
        map["username"] = this.data.username
        map["password"] = this.data.password
        return map
    }
    override fun getBodyContentType() : String{
        return "application/x-www-form-urlencoded; charset=UTF-8"
    }


    override fun parseNetworkResponse(response: NetworkResponse?): Response<String> {
        val date = response!!.headers["ValidUntil"]!!
        loginHeaderData = LoginHeaderData(response.headers!!["JWT"], DateFormatter.parseDate(date))
        return super.parseNetworkResponse(response)
    }
}

但是,当我发送此请求并在Android-Profiler中对其进行查找时,它表明该请求不包含任何内容:

enter image description here

0 个答案:

没有答案