我正在試圖通過json c#web服務來交流我的android應用程序 我得到從Web服務檢索json對象,但我失敗發送一個json對象到web服務。發送json字符串到C#web服務從android
這裏是我的web服務代碼
[WebMethod]
public void recibePosicion(string json_cad)
{
JavaScriptSerializer jss = new JavaScriptSerializer();
Posicion nueva_posicion = jss.Deserialize<Posicion>(json_cad);
PosicionDAO posicion_dao = new PosicionDAO();
posicion_dao.InsertaPosicion(nueva_posicion);
}
這裏是我的Andorid代碼
HttpClient client = new DefaultHttpClient();
HttpConnectionParams.setConnectionTimeout(client.getParams(), 10000); //Timeout Limit
HttpResponse response;
JSONObject json = new JSONObject();
try
{
HttpPost post = new HttpPost("http://10.0.2.2:1218/JSON.asmx/recibePosicion");
post.setHeader("Accept", "application/json");
post.setHeader("Content-type", "application/json");
json.put("idPosicion", "-1");
json.put("x", "100");
json.put("y", "200");
StringEntity se = new StringEntity(json.toString(), HTTP.UTF_8);
se.setContentType("application/json");
post.setEntity(se);
HttpResponse getResponse = client.execute(post);
final int statusCode = getResponse.getStatusLine().getStatusCode();
if (statusCode != HttpStatus.SC_OK) {
Log.w(getClass().getSimpleName(), "Error " + statusCode + " for URL " + url);
return null;
}
}
catch(Exception e)
{
e.printStackTrace();
System.out.println("Cannot Estabilish Connection");
}
我得到的StatusCode 500 相反,如果我更改Web方法
公共無效recibePosicion()
我打電話給服務但我不知道如何獲取json數據。
請問我會apreciate任何提示來解決這個問題。
謝謝。
什麼異常是由服務器拋出? – zmbq
1.將'static'添加到asp.net WebMethod'public static void recibePosicion(string json_cad)'2.使用'json.toString()'時得到的字符串3.調試程序 – Coder
解決了問題嗎? –