Android:向C#webservice发送JSON

Android:向C#webservice发送JSON,c#,java,android,json,web-services,C#,Java,Android,Json,Web Services,我目前正试图将一个JSON字符串从android应用程序发送到我制作的C#webservice。Web服务代码很简单: public void PostLocationsAndroid(字符串数据) { //做事 } 但是,我的所有请求最终都会导致数据为空。以下是我如何尝试在android应用程序中使用Web服务: 公共void postData(字符串myValue){ HttpClient HttpClient=新的DefaultHttpClient(); HttpPost HttpP

我目前正试图将一个JSON字符串从android应用程序发送到我制作的C#webservice。Web服务代码很简单:

public void PostLocationsAndroid(字符串数据)
{
//做事
}

但是,我的所有请求最终都会导致
数据
为空。以下是我如何尝试在android应用程序中使用Web服务:


公共void postData(字符串myValue){
HttpClient HttpClient=新的DefaultHttpClient();
HttpPost HttpPost=新的HttpPost(“”);
试一试{
StringEntity se=新的StringEntity(myValue);
setContentType(“application/json;charset=UTF-8”);
httppost.setEntity(se);
setHeader(“接受”、“应用程序/json”);
HttpParams params=新的BasicHttpParams();
params.setParameter(“数据”,valueIWantToSend);
httppost.setParams(params);
HttpResponse response=httpclient.execute(httppost); }


我试过几种不同的方法,这是我最近的一次失败。

你试过这个问题的答案吗


这似乎与您现在遇到的问题非常相似。

您确定要传递JSON字符串吗

尝试下面的代码(我在我的代码和作品中使用过类似的代码)


是的,我尝试了一个非常类似的方法,但是我使用了一个
StringEntity
,因为我只是想发布一个JSON字符串。我仍然得到
数据
为空。我想知道我是否错误地传递了我的参数?我不确定。我从来没有尝试过使用StringEntity。如果很遗憾,我不确定问题是什么:(你的web服务方法是什么样子的?试着提前调用api REST api客户端。看看你是否得到了正确的响应。如果没有,那么很可能是web服务的问题。
 JSONObject jsonObject = new JSONObject();
 jsonObject.put("data", valueIWantToSend);

 HttpResponse httpResponse = handleJsonPost(url, jsonObject);

public HttpResponse handleJsonPost(String url, JSONObject jsonObject)
        throws UnsupportedEncodingException, IOException, ClientProtocolException {
    HttpPost httpPost = new HttpPost(url);
    httpPost.setHeader("Content-Type", "application/json"); 
    httpPost.setHeader("Accept", "application/json");

    if (jsonObject != null) {
        StringEntity se = new StringEntity(jsonObject.toString());
        httpPost.setEntity(se);
    }

    return new DefaultHttpClient().execute(httpPost);
}