401在Postman中完美工作时,从Android应用程序发送post请求时发生身份验证错误

401在Postman中完美工作时,从Android应用程序发送post请求时发生身份验证错误,android,http-post,android-volley,http-status-code-401,exotel-api,Android,Http Post,Android Volley,Http Status Code 401,Exotel Api,我正在我的一个客户端android应用程序中集成exotel呼叫服务。 Api在postman中运行良好,并接收xml响应,但在android应用程序中不起作用,并给出了volley 401身份验证错误 val stringRequest = object : StringRequest(Request.Method.POST, URL, Response.Listener { response -&

我正在我的一个客户端android应用程序中集成exotel呼叫服务。 Api在postman中运行良好,并接收xml响应,但在android应用程序中不起作用,并给出了volley 401身份验证错误

val stringRequest = object : StringRequest(Request.Method.POST,
                        URL,
                        Response.Listener { response ->
                            Toast.makeText(context, "response " + response.toString(), Toast.LENGTH_SHORT).show()
                            Log.d("Callresponse", response.toString())
                        }, Response.ErrorListener { error ->
                    Log.d("Callresponseerror", error.message.toString())
                    Toast.makeText(context, "error " + error.message, Toast.LENGTH_SHORT).show()
                }) {
                    override fun getParams(): MutableMap<String, String> {
                        val params = HashMap<String, String>()
                        params["From"] = AppSetting.getSitterMobile(context, AppConstants.PREF_MOBILE, null)
                        params["To"] = contact
                        params["CallerId"] = "*****"
                        params["CallType"] = "****"
                        return params
                    }
                }
                stringRequest.retryPolicy = DefaultRetryPolicy(10,
                        10,
                        DefaultRetryPolicy.DEFAULT_BACKOFF_MULT)
                requestQueue.add(stringRequest)
val stringRequest=object:stringRequest(Request.Method.POST,
网址,
Response.Listener{Response->
Toast.makeText(上下文,“response”+response.toString(),Toast.LENGTH\u SHORT.show())
Log.d(“Callresponse”,response.toString())
},Response.ErrorListener{error->
Log.d(“Callresponseerror”,error.message.toString())
Toast.makeText(上下文,“error”+error.message,Toast.LENGTH\u SHORT.show())
}) {
重写fun getParams():MutableMap{
val params=HashMap()
params[“From”]=AppSetting.getSitterMobile(上下文,AppConstants.PREF_MOBILE,null)
参数[“到”]=联系人
参数[“CallerId”]=“*****”
参数[“调用类型”]=“***”
返回参数
}
}
stringRequest.retryPolicy=DefaultRetryPolicy(10,
10,
DefaultRetryPolicy.DEFAULT\u BACKOFF\u MULT)
添加(stringRequest)

您是否找到了解决此问题的方法?我一直在用samecheck检查邮递员在标题中秘密传递的参数。在页眉中添加这些参数,效果会很好。你能在这里@chiragpatel发布答案吗?这将是非常有帮助的5个参数在标题中为我是日期,内容类型,内容长度,连接,服务器。内容类型、连接、服务器我按原样输入值、我使用日历的日期。我的主要问题是内容长度。Postman(527)中显示的内容长度、我使用getBytes(“UTF-8”)获得的内容长度(167)和Android接收的内容长度(64)都是不同的。当我硬编码并发送一个内容长度参数为“64”时,它再次给出一个AuthFailure错误,响应代码401如果我发送除64以外的任何其他内容长度,它将给出一个错误com.android.volley.NoConnectionError:java.net.ProtocolException:content length承诺167字节,但收到64字节