我正在尝试从我的 android 客户端向我的 .net Rest 服务发送一个 json 字符串... 谁能帮我解决这个问题?
HttpClient client = new DefaultHttpClient();
HttpPost post = new HttpPost("http://myURL");
JSONObject json = new JSONObject();
json.put("name", "i am sample");
StringEntity str = new StringEntity(json.toString());
str.setContentType("application/json; charset=utf-8");
str.setContentEncoding(new BasicHeader(HTTP.CONTENT_TYPE,"application/json; charset=utf-8"));
post.setEntity(str);
HttpResponse response = client.execute(post);
响应是错误的请求。我是否将 json 对象作为字符串发送?这段代码正确吗?
最佳答案
解决办法是
HttpPost request = new HttpPost("http://10.242.48.54/restinsert/Service1.svc/save");
JSONStringer json = new JSONStringer()
.object()
.key("cname").value(name)
.key("cmail").value(email)
.endObject();
StringEntity entity = new StringEntity(json.toString(), "UTF-8");
entity.setContentType("application/json;charset=UTF-8");//text/plain;charset=UTF-8
entity.setContentEncoding(new BasicHeader(HTTP.CONTENT_TYPE,"application/json;charset=UTF-8"));
request.setEntity(entity);
// Send request to WCF service
DefaultHttpClient httpClient = new DefaultHttpClient();
HttpResponse response = httpClient.execute(request);
这将发送 json 对象字符串,所以在 .net 中请求应该有对象参数...
关于.net - 如何将 json 字符串从 java 发送到 .NET REST 服务?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4032349/