Java 通过android应用程序的凌空库将数据发布到服务器

Java 通过android应用程序的凌空库将数据发布到服务器,java,android,networking,python-requests,android-volley,Java,Android,Networking,Python Requests,Android Volley,伙计们,我需要帮助,我正在尝试将这些数据发布到我的服务器上,但它返回了一个错误,它在postman中似乎工作得很好。这个问题是在尝试使用google的volley库在android应用程序中实现时出现的 到服务器脚本 这是使用postman rest客户端成功发布的屏幕截图: private void SaveDataToServer(){ StringRequest serverPostRequest=新建StringRequest(Request.Method.POST,Config.SAV

伙计们,我需要帮助,我正在尝试将这些数据发布到我的服务器上,但它返回了一个错误,它在postman中似乎工作得很好。这个问题是在尝试使用google的volley库在android应用程序中实现时出现的

到服务器脚本

这是使用postman rest客户端成功发布的屏幕截图:

private void SaveDataToServer(){
StringRequest serverPostRequest=新建StringRequest(Request.Method.POST,Config.SAVE\u INVENTORY\u URL,
新的Response.Listener(){
@凌驾
公共void onResponse(字符串json){
试一试{
Toast.makeText(SelectItemsActivity.this、json.toString()、Toast.LENGTH\u SHORT.show();
Log.e(“来自服务器的响应”,json);
JSONObject dataJson=新的JSONObject(json);
JSONObject myJson=dataJson.getJSONObject(“状态”);
String status=myJson.getString(“status_text”);
if(status.equalsIgnoreCase(“Success”)){
Toast.makeText(SelectItemsActivity.this,“数据保存成功”,Toast.LENGTH\u SHORT.show();
proggresshow.disclose();
}否则{
Toast.makeText(SelectItemsActivity.this,“保存数据时发生错误”,Toast.LENGTH\u SHORT.show();
proggresshow.disclose();
}
}捕获(JSONException e){
e、 printStackTrace();
}
}
},new Response.ErrorListener(){
@凌驾
公共错误响应(截击错误截击错误){
}
}){
@凌驾
受保护的映射getPostParams(){
HashMap params=新的HashMap();
参数put(“api_key”,Config.api_key);
参数put(“移动id”,“1”);
参数put(“房间名称”、“阁楼房间”);
参数put(“项目名称”、“万圣节扫帚”);
参数put(“项目id”,“6”);
Log.e(“数据传输到服务器”,params.toString());
返回参数;
}
};
saveDataRequest.add(serverPostRequest);
}

尝试在请求中添加getHeaders方法

  @Override
            public Map<String, String> getHeaders() throws AuthFailureError {
                final HashMap<String, String> headers = new HashMap<>();
                headers.put("Content-Type", "multipart/form-data");
                return headers;
            }
@覆盖
公共映射getHeaders()引发AuthFailureError{
final HashMap headers=new HashMap();
headers.put(“内容类型”、“多部分/表单数据”);
返回标题;
}

将这些行添加到我的请求头后,我能够成功地将数据库提交到我的数据库。 此外,我还确保将stringRequest用于jsonRequest,但由于我不知道的原因,它不起作用

        @Override
        public Map<String, String> getHeaders() throws AuthFailureError {
            HashMap<String, String> headers = new HashMap<>();
            headers.put("Content-Type","application/x-www-form-urlencoded");
            return headers;
        }
@覆盖
公共映射getHeaders()引发AuthFailureError{
HashMap headers=新的HashMap();
headers.put(“内容类型”、“应用程序/x-www-form-urlencoded”);
返回标题;
}

您遇到了什么错误???@sumit错误是我无法使用上面的java代码实现的截取功能将数据从android端保存到数据库,我可以使用postman保存数据,如上图所示。06-21 11:42:35.518 6705-6705/ke.co.ipandasoft.cubemovers E/来自服务器的响应:{“状态”:{“状态代码”:“3”,“status_text”:“Invalid Access”}}如果发布成功,应该会成功,就像上图中的postman一样。您的参数中似乎发送了错误的内容。请检查在getParams方法中传递的所有值这是items@Override受保护的映射getParams(){HashMap params=new HashMap();params.put(“api_key”,Config.api_key);params.put(“move_id”,“1”);params.put(“room_name”,“Attic room”);params.put(“item_name”,“万圣节扫帚”);params.put(“item_id”,“6”);返回参数;}
        @Override
        public Map<String, String> getHeaders() throws AuthFailureError {
            HashMap<String, String> headers = new HashMap<>();
            headers.put("Content-Type","application/x-www-form-urlencoded");
            return headers;
        }