在 swift alamofire 中创建 json 数组

Posted

技术标签:

【中文标题】在 swift alamofire 中创建 json 数组【英文标题】:create json array in swift alamofire 【发布时间】:2016-10-10 10:36:21 【问题描述】:

这是服务器要求的请求格式,


 "internal_name": "SDSSD",
 "display_name": "SDSDSDSD",
 "image": "sesse.jpg",
 "notes": "sdsdsdsdsdsdsdsd",
 "short_description": "ssdsdsd",
 "long_description": "sdsdsdsd",
 "ean_code": "3434343434",
 "status": "not_verified",
 "state": "active",
 "quantity": 1,
 "brand": 
   “name”: “My Brand”
 ,
 "categories": [
   
     “id”: “My Category”
   
 ]

在这里,如您所见,它需要将类别作为数组,所以我的问题是如何创建数组。使用 swift 。这是我的快速代码

let parameters :[String:AnyObject] = [
            "internal_name":product.displayName,
            "display_name":product.displayName,
            "language":Constant.Language.LAN_ENGLISH,
            "notes":product.initialName,
            "image": product.photo,
            "short_description":product.longDescription,
            "long_description":product.longDescription,
            "ean_code":product.eanCode,
            "status":product.status,
            "state":Constant.Status.STATUS_ACTIVE,
            "categories": [
                "id":product.categoryObject.id
            ],
            "quantity":1,

        ]

这不接受来自服务器,因为它不是数组,我在这里缺少什么

【问题讨论】:

【参考方案1】:

试试下面的代码:

let parameters :Parameters = [
        "internal_name":product.displayName,
        "display_name":product.displayName,
        "language":Constant.Language.LAN_ENGLISH,
        "notes":product.initialName,
        "image": product.photo,
        "short_description":product.longDescription,
        "long_description":product.longDescription,
        "ean_code":product.eanCode,
        "status":product.status,
        "state":Constant.Status.STATUS_ACTIVE,
        "brand" : ["name" : "My Brand"],
        "categories": [
            ["id":product.categoryObject.id]
        ],
        "quantity":1,
        ]

【讨论】:

好像不是正确的发送方式,服务器不接受 为什么?我已经将此 json 传递给服务器。它工作正常。你添加了这段代码吗? 是的,问题在这里似乎是“类别”:[ [“id”:product.categoryObject.id] ], 是的,我认为这是 Alamofire 中重新安装应用程序的错误。谢谢:)

以上是关于在 swift alamofire 中创建 json 数组的主要内容,如果未能解决你的问题,请参考以下文章

升级到 swift 2 时 Alamofire 关闭参数错误

如何在 Alamofire 正文 + 参数中创建请求

Alamofire 无法在 .responseJSON 中创建 throw

Swift ios alamofire 数据在 viewDidLoad 中第一次返回空

Alamofire 3.0 处理 JSON

Alamofire.request 不与自定义对象映射