【问题标题】:How do I format an array of array to be POSTed to an API?如何格式化要发布到 API 的数组数组?
【发布时间】:2016-01-09 05:18:43
【问题描述】:

我有一组需要格式化并发送到外部 API 的数组。我的目标是获取 CoreLocation 坐标数据,并将其发送到 API。

下面是一个例子:

MBP:www $ xcrun swift -version

Apple Swift 2.1.1 版 (swiftlang-700.1.101.15 clang-700.1.81)

目标:x86_64-apple-darwin15.2.0

正在使用的库:

  • Swiftyjson 1.0

  • Alamofire 3.0.1

{

t1 = "2015-12-14";
t2 = "6517.8432";
t3 = Miles;
locations = (
    {
        latitude = "37.34229154”;
        longitude = "-122.092223”;
        timestamp = "2015-11-12”;
    },
    {
        latitude = "37.37778312”;
        longitude = "-122.14944148”;
        timestamp = "2015-11-12”;
    },
    {
        latitude = "37.3780272”;
        longitude = "-122.14968145”;
        timestamp = "2015-11-12”;
    },
    {
        latitude = "37.37828075”;
        longitude = "-122.14990349”;
        timestamp = "2015-11-12”;
    },
    {
        latitude = "37.37854172”;
        longitude = "-122.15010976”;
        timestamp = "2015-11-12”;
    }
);
t5 = “Test123";
t6 = "";
t7 = "good";
t8 = “Running";
t9 = "4";

}

我使用 Alamofire 通过 HTTP POST 将数据发送到 API

Alamofire.request(.POST, endpoint, headers: headers, parameters: ["data": data])

上面的请求在下面转换。请注意位置数据(“纬度”、“经度”、“时间戳”)是每个数组的方式。我的目标是将数组中包含的“纬度”、“经度”和“时间戳”组合在一起。

{

“t3" : "Miles",
    “t8" : "Running",
    “t2" : "6517.8432",
    “t7" : "good",
    “t6" : "",
    “t1" : "2015-12-14",
    "locations" : [
        {
            "timestamp" : "2015-11-12"
        },
        {
            "longitude" : "-122.092223"
        },
        {
            "latitude" : "37.34229154"
        },
        {
            "timestamp" : "2015-11-12"
        },
        {
            "longitude" : "-122.14944148"
        },
        {
            "latitude" : "37.37778312"
        },
        {
          "timestamp" : "2015-11-12"
        },
        {
          "longitude" : "-122.14968145"
        },
        {
          "latitude" : "37.3780272"
        },
        {
          "timestamp" : "2015-11-12"
        },
        {
          "longitude" : "-122.14990349"
        },
        {
          "latitude" : "37.37828075"
        },
        {
          "timestamp" : "2015-11-12"
        },
        {
          "longitude" : "-122.15010976"
        },
        {
          "latitude" : "37.37854172"
        }
],
“t9" : "4",
“t5" : "Test123"

}

【问题讨论】:

  • 什么是“位置”?我从未见过您用来定义“位置”的这种 Swift 语法。你为什么使用:( { ... ; ... ; .... ;} ) 这不是在 Swift 中创建数组的方式。
  • @Darko 位置是我尝试创建数组的数组。移除数组应包含位置数组,内部数组应包含位置数据(纬度、经度、时间戳)。格式化它的正确方法是什么?感谢您的重播!

标签: json swift alamofire swifty-json


【解决方案1】:

对内部和外部数组使用方括号。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-09-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多