IOS:将数组值发布到 JSON 服务器

Posted

技术标签:

【中文标题】IOS:将数组值发布到 JSON 服务器【英文标题】:IOS: POST Array values to JSON Server 【发布时间】:2017-06-20 07:49:06 【问题描述】:

我有一个这种形式的数组:

(
        
        itemId = 18;
        itemPrice = "90.00";
        itemQuantity = 100;
    ,
        
        itemId = 17;
        itemPrice = "88.00";
        itemQuantity = 120;
    
)

我必须以这种形式将其发布到 Json 服务器

im[18][price]=90
im[18][stock]=100
im[18][check]=1

im[17][price]=88
im[17][stock]=120
im[17][check]=1

请帮助我如何做到这一点,目前我正在使用以下代码

for (NSInteger i = 0; i < selectedIdArray.count; i++)
    
        mapData = [NSString stringWithFormat:@"api_key=bf45c093e542f057c123ae7d6&menu_name=%@&im[%@][price]=%@&im[%@][stock]=%@&im[%@][check]=%@",MenuNameStr,selectedIdArraySTR,selectedPriceArraySTR,selectedIdArraySTR,selectedQuantityArraySTR,selectedIdArraySTR,@"1"];
    

它给出以下响应

map data api_key=bf45c093e542f057c123ae7d6&menu_name=&im[18,17][price]=90.00,88.00&im[18,17][stock]=100,120&im[18,17][check]=1

请有人帮我将以下数据分别发送到服务器

【问题讨论】:

您的问题到底是什么?你做一个POST?那你不把那个数据放到 HTTPBody 里吗? 同样的事情,我不知道如何破坏阵列。请帮我为单独的参数发送单独的数据。目前它需要完整的参数数组 您显示的第二种格式不是 JSON。 请帮我解决这个问题我如何发布这个数组 你能告诉我你想如何发布数据吗?实际的 url 或请求是什么? 【参考方案1】:

假设这是你的字典。


    itemId = 17;
    itemPrice = "88.00";
    itemQuantity = 120;

先获取dict中元素的个数。

int getKeysCount = [allKeys count];

假设这是您需要的输出

im[18][price]=90
im[18][stock]=100
im[18][check]=1

im[17][price]=88
im[17][stock]=120
im[17][check]=1

你需要更新你的循环

mapData = [NSStringstringWithFormat:@"api_key=XX--XX&menu_name=%@"];

for (int i = 0; i < selectedIdArray.count; i++) 
    int k = itemId[i];

    for (int j = 0; j < getKeysCount.count; i++) 
        mapData = [NSString stringWithFormat:@"&im[k][price]=%@&im[k][stock]=%@&im[k][check]=%@",itemPrice[i],itemQuantity[i],@"1"];
    

NSLog(@"%@",mapData);

//Let me know if you find any query in this answer

【讨论】:

这里的 itemId[i] 是数组还是字符串? 我将 itemId = 17 分配为 int k = itemId[i]; 但我有 2 个商品 ID 将其放入一个循环中,它会自动更新,这就是我放置 itemId[i] 的原因。 @Abhi 我的回答解决了你的问题吗?【参考方案2】:

我想你想从文件中解析 JSON 这里 Swift JSON 解析 How to parse a JSON file in swift? 和 Objective-C 解析 How do I parse JSON with Objective-C?

【讨论】:

以上是关于IOS:将数组值发布到 JSON 服务器的主要内容,如果未能解决你的问题,请参考以下文章

如何通过 iOS 中的 JSON webservices post 方法将一组图像发送到服务器?

在 iOS 中解析 json 并将值添加到对象数组

如何将数组作为参数发送到iOS中的json服务

如何通过点击按钮将选定的 JSON 数据值从 uitableview 发送到服务器

如何将 JSON 数组作为 URL 中的参数传递

如何将 JSON 数据发布到 iOS 中的服务器?