在 PropertyInfo class 的 setVlaue() 中发送 JSON 对象
Send JSON object in setVlaue() of PropertyInfo class
当我在 setValue()
中传递一个字符串值时,它会完美地调用 Web 服务。相反,如果我传递 JSON 对象,它会显示 "cannot serialize" 错误。我想在 setValue()
中发送 JSON 对象。有人可以帮助我吗?
SoapObject request1 = new SoapObject(NAMESPACE, METHOD_NAME);
PropertyInfo unameProp = new PropertyInfo();
unameProp.setName("param");
unameProp.setValue(data);
unameProp.setType(String.class);
request1.addProperty(unameProp);
allowAllSSL.allowAllSSL();
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
envelope.setOutputSoapObject(request1);
HttpTransportSE ht = new HttpTransportSE(URL, 20000);
ht.call(SOAP_ACTION, envelope);
在第4行,我添加了toString()来解决问题,问题已经解决。
JSON 对象:
JSONObject param = new JSONObject();
param.put("loginid", email.toString().trim());
param.put("password", password.toString().trim());
第 4 行:
unameProp.setValue(param.toString());
当我在 setValue()
中传递一个字符串值时,它会完美地调用 Web 服务。相反,如果我传递 JSON 对象,它会显示 "cannot serialize" 错误。我想在 setValue()
中发送 JSON 对象。有人可以帮助我吗?
SoapObject request1 = new SoapObject(NAMESPACE, METHOD_NAME);
PropertyInfo unameProp = new PropertyInfo();
unameProp.setName("param");
unameProp.setValue(data);
unameProp.setType(String.class);
request1.addProperty(unameProp);
allowAllSSL.allowAllSSL();
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
envelope.setOutputSoapObject(request1);
HttpTransportSE ht = new HttpTransportSE(URL, 20000);
ht.call(SOAP_ACTION, envelope);
在第4行,我添加了toString()来解决问题,问题已经解决。
JSON 对象:
JSONObject param = new JSONObject();
param.put("loginid", email.toString().trim());
param.put("password", password.toString().trim());
第 4 行:
unameProp.setValue(param.toString());