我是Android的新手,现在我在做一个应用,这个应用我需要把数据发送到服务器上,现在我用的是Volley post方法,但是当我用Volley发送数据到服务器上的时候,参数总是显示为空,这里我附上了代码,请检查一下,这里我用的是片段。
String url = "http://192.168.1.182:8084/name/registration.jsp";
final ProgressDialog pDialog = new ProgressDialog(this.getActivity());
pDialog.setMessage("Loading...");
pDialog.show();
RequestQueue rq = Volley.newRequestQueue(getActivity().getApplicationContext());
JsonObjectRequest jsonObjReq = new JsonObjectRequest(Method.POST,
url, null,
new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject response) {
Log.d(TAG, response.toString());
// pDialog.hide();
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
VolleyLog.d(TAG, "Error: " + error.getMessage());
//pDialog.hide();
}
}) {
@Override
protected Map<String, String> getParams() {
Map<String, String> params = new HashMap<String, String>();
params.put("name", "Ajay K K");
params.put("mailid", "ajaykk50@gmail.com");
params.put("phone", "8086327023");
params.put("place", "Calicut");
params.put("longitude","44444.3333");
params.put("latitude","666666.3333");
params.put("wheel", "1");
params.put("type", "owner");
return params;
}
};
// Adding request to request queue
rq.add(jsonObjReq);
不要重写getParams()
。JSONObjectRequest
使用构造函数中的第三个参数获取post参数。下面是Volley代码中包含的文档
/**
* Creates a new request.
* @param method the HTTP method to use
* @param url URL to fetch the JSON from
* @param jsonRequest A {@link JSONObject} to post with the request. Null is allowed and
* indicates no parameters will be posted along with request.
* @param listener Listener to receive the JSON response
* @param errorListener Error listener, or null to ignore errors.
*/
public JsonObjectRequest(int method, String url, JSONObject jsonRequest,
Listener<JSONObject> listener, ErrorListener errorListener) {
super(method, url, (jsonRequest == null) ? null : jsonRequest.toString(), listener,
errorListener);
}
像这样使用。
String url = "http://192.168.1.182:8084/name/registration.jsp";
final ProgressDialog pDialog = new ProgressDialog(this.getActivity());
pDialog.setMessage("Loading...");
pDialog.show();
RequestQueue rq = Volley.newRequestQueue(getActivity().getApplicationContext());
JSONObject params = new JSONObject();
try {
params.put("name", "Ajay K K");
params.put("mailid", "ajaykk50@gmail.com");
params.put("phone", "8086327023");
params.put("place", "Calicut");
params.put("longitude","44444.3333");
params.put("latitude","666666.3333");
params.put("wheel", "1");
params.put("type", "owner");
} catch (JSONException e) {
e.printStackTrace();
}
JsonObjectRequest jsonObjReq = new JsonObjectRequest(Method.POST,
url, params, //Not null.
new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject response) {
Log.d(TAG, response.toString());
// pDialog.hide();
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
VolleyLog.d(TAG, "Error: " + error.getMessage());
//pDialog.hide();
}
});
// Adding request to request queue
rq.add(jsonObjReq);
这是我的html表单: 这是DTO 这里的日期是 此外,当我导入一个JSON文件时,我有一个用户数组,我能够成功地运行它。 我错过了什么? 注意:java.util.date起作用!
问题内容: 当我使用下面的ajax调用下面的Post方法时,为什么参数总是为null? 这是通过ajax对Web API方法的调用: 问题答案: 基本上,您只能有一个标量类型的参数,该参数用属性装饰,并且您的请求需要使用,并且POST有效负载应如下所示: 请注意,与标准协议相反,缺少参数名称。您仅发送值。 您可以在中阅读有关Web Api中的模型绑定如何工作的更多信息。 但是,当然,这种黑客入侵是
我试图通过web api microsoft应用程序中的post请求传递对象的参数,但传递的参数始终为null。 这是我的控制器的post方法,在调试下程序达到了方法但是dataUrlIN。url字符串始终为空 这是DataUrl的对象 这是post请求的最新版本 在发送post请求后,方法公共无效Post(Data Url dataUrlIN)中的断点被触发,但url字符串为空HelloWorl
问题内容: 更新:我现在已经解决了这个问题-请滚动至底部以获取有关修复的信息 嗨,大家好, 我有一个用Java编写的Web服务,托管在Axis2 / Tomcat / Apache服务器上。我的客户端软件是用C#编写的。 我在用java2wsdl生成wsdl文件的方式时遇到了一些令人烦恼的问题,这确实使我很头疼,但是由于这个问题,我感到完全困惑。 基本上,发生的事情是客户端认为Web服务很好,并发
HTTPProxyHandler总是发送连接请求是正确的吗?这不是只在你想做隧道的时候才适用吗?
问题内容: [HttpPost] [Route(“/getter/validatecookie”)] public async Task GetRankings([FromBody] string cookie) { int world = 5; ApiGetter getter = new ApiGetter(_config, cookie); if (!await IsValidCookie(