【问题标题】:Swift: Alamofire POST Request with JSON Object as bodySwift:以 JSON 对象为主体的 Alamofire POST 请求
【发布时间】:2019-09-15 18:04:30
【问题描述】:

我有这个要求:

curl -X "POST" "myURL" \
-H 'Content-Type: application/json' \
-H 'User-Agent: myAgent)' \
-H 'Accept-Language: it-IT' \
-d $'{ "Summary": { "Discount": 1.099, "TotalAmount": 9.891, "SubtotalAmount": 10.99 }, "Token": "token", "InstantDiscountId": "id" }'

但我不知道如何使用该 JSON 对象设置正文。对于 Alamofire,我总是使用 [String:Any] 作为请求中的参数,但事实并非如此。

【问题讨论】:

  • 只需将请求的编码设置为JSONEncoding.default
  • @ZonilyJame 您将如何为该 JSON 创建 [String:Any] 对象?我已经试过了……
  • 好吧,这只是我如何创建参数对象的问题...谢谢 ;)

标签: json swift post alamofire


【解决方案1】:

答案是简单地将编码设置为JSONEncoding.default

这是代码的样子

let request = Alamofire.request(
    myUrl,
    method: .post,
    parameters: [
        "Summary": [
            "Discount": 1.099,
            "TotalAmount": 9.891,
            "SubtotalAmount": 10.99
        ],
        "Token": "token",
        "InstantDiscountId": "id"
    ],
    encoding: JSONEncoding.default,
    headers: [
        "Content-Type": "application/json",
        "User-Agent": "myAgent",
        "Accept-Language": "it-IT"
    ]
)

【讨论】:

    猜你喜欢
    • 2019-03-17
    • 2016-11-25
    • 1970-01-01
    • 2020-02-10
    • 1970-01-01
    • 2015-11-23
    • 1970-01-01
    • 2019-07-18
    • 2017-11-16
    相关资源
    最近更新 更多