从Android设备发送Json数组到移动Azure服务后端javascript不工作
本文关键字:服务 Azure 移动 后端 javascript 工作 数组 Android Json | 更新日期: 2023-09-27 18:10:11
如何从Android设备发送Json数组到移动azure服务中的后端javascript。
下面是windows store应用程序的c#代码,可以正常工作。
问题登录投票0登录投票
如何从Android设备发送Json数组到移动azure服务的后端javascript。
下面是windows store应用程序的c#代码,可以正常工作。
JArray jsonArray = new JArray();
jsonArray.Add(JToken.FromObject(new Contact() { Name = "Clarke", ContactNo = "123456" }));
jsonArray.Add(JToken.FromObject(new Contact() { Name = "Jordan", ContactNo = "4513264" }));
JToken x = await App.MobileService.InvokeApiAsync("userservice/UploadContacts", jsonArray);
当我通过Fiddler测试它的工作正常。但是当我从android设备发送时,我在服务器中获得的数据为
{values: [{nameValuePairs: [Object]}, {nameValuePairs: [Object]}]}
匹配的记录数,但我收到的不是实际数据,而是nameValuePairs: object.
下面是android代码。
JSONObject job = new JSONObject();
Contact c1 = new Contact();
c1.ContactNO = "9067655676";
c1.Name = "abcd";
job.add(c1);
Contact c2 = new Contact();
c2.ContactNO = "999999999";
c2.Name = "efgh";
job.add(c2);
JSONArray book = new JSONArray(job);
MobileServiceClient mClient = new MobileServiceClient(
"https://MyAppService.azure-mobile.net/",
"myKeyValue", context);
mClient.invokeApi("userservice/UploadContacts", book, Contact.class , new ApiOperationCallback()
{
//onCompleted callback code..............
});
Contact类有2个属性ContactNO, Name
谁来帮我解决这个问题........
很确定你的代码不会像那样编译。无论如何,您可能希望这样做:
JsonArray jArray = new JsonArray();
Contact c1 = new Contact();
c1.ContactNO = "123455";
c1.Name = "Test";
Gson gson = new Gson();
jArray.add(gson.toJsonTree(c1));
Contact c2 = new Contact();
c2.ContactNO = "23455";
c2.Name = "test2";
jArray.add(gson.toJsonTree(c2));
mClient.invokeApi("uploadContacts", jArray, new ApiJsonOperationCallback() {
@Override
public void onCompleted(JsonElement jsonElement, Exception e, ServiceFilterResponse serviceFilterResponse) {
注意你添加的元素是JsonArray而不是JSONObject。要确保使用的是com.google.json库