我正在Android應用程序上工作,我有我的「POST」請求(像往常一樣)到我的WCF Restful WS的問題。Android發佈請求(JSON參數)到WCF restful WS
RESTful方法:
[OperationContract]
[WebInvoke(Method = "POST", RequestFormat = WebMessageFormat.Json, UriTemplate = "createUser")]
string createUser(string user);
我爲了找錯誤我的方法實現的評論身下放的,現在它看起來像:
public string createUser(string user)
{
return user;
}
我一直在呼籲這個方法數百次來自JS(jQuery,Ajax)和JSON.stringify(數據),沒有任何問題。 現在我需要從android應用程序做同樣的事情。 這可能是片斷的我的代碼引起的問題:
JSONObject user = new JSONObject();
user.put("id", "15");
user.put("name", "John");
user.put("city", "France");
user.put("email", "myemail");
user.put("password", "mypass");
HttpClient client = new DefaultHttpClient();
URI website = new URI("http://10.0.2.2/AutoOglasi/Service1.svc/createUser");
HttpPost request = new HttpPost();
request.setEntity(new StringEntity(user.toString()));
request.addHeader("content-type", "application/json");
request.setURI(website);
HttpResponse response = client.execute(request);
我正在從服務器的響應(沒有錯誤在我的客戶端):
The exception message is 'There was an error deserializing the object of type
System.String. End element 'root' from namespace '' expected. Found element 'id' from
namespace ''.'.See server logs for more details. The exception stack trace is: </p> <p>at
System.ServiceModel.Dispatcher.OperationFormatter.DeserializeRequest(Message message,
Object[] parameters) at
System.ServiceModel.Dispatcher.DemultiplexingDispatchMessageFormatter.DeserializeRequest(Me ssage message, Object[] parameters) at
System.ServiceModel.Dispatcher.UriTemplateDispatchFormatter.DeserializeRequest(Message message, Object[] parameters) at
System.ServiceModel.Dispatcher.DispatchOperationRuntime.DeserializeInputs(MessageRpc& rpc) at
System.ServiceModel.Dispatcher.DispatchOperationRuntime.InvokeBegin(MessageRpc& rpc) at
System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage5(MessageRpc& rpc) at
System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage31(MessageRpc& rpc)
at System.ServiceModel.Dispatcher.MessageRpc.Process(Boolean isOperationContextSet)</p> </div> </body></html>
任何建議或幫助,請?
對不起,我剛剛編輯了我的最後一句話,我沒有收到錯誤,這是我從服務器的迴應。我試過你的建議,沒有什麼改變。 – Milos 2013-04-05 12:41:52
我在服務器端的參數是一個字符串(JSON),我應該解析,沒有任何其他類型的字符串除外。 – Milos 2013-04-05 12:48:33