Alamofire POST编码问题

问题描述 投票:0回答:1

我正在尝试登录Web服务,如下所示:

func Login(completionHandler:@escaping (Bool) -> ()) {
        let url = MyUrl
        let parameters: Parameters = [
            "Password":password,
            "StayLoggedIn":NSNumber(value: true),
            "UserName":username
        ]

        var headers:HTTPHeaders = commonHeaders()
        headers["Content-Type"] = "application/json;charset=UTF-8"

        Alamofire.request(url, method:.post, parameters:parameters, headers:headers).responseJSON { response in
            switch response.result {
            case .success:
                debugPrint(response)

            case .failure(let error):
                print(error)
            }

        }
    }

不知何故,服务器返回501错误。我正在重写Swift中的Obj-c应用程序,并将AURofire的NSURLSessions替换为讨价还价。

我在工作的obj-c应用程序中看到的是发送到服务器的标头包含

Content-Type: application/json;charset=UTF-8 

如您所见,我明确地将此标头添加到我的请求中,但不知何故,它不会发送到服务器。

我还看到,我的登录凭据不会发送到服务器。

所以,我想我的问题是:如何告诉Alamofire使用正确的编码/内容类型?

swift post alamofire
1个回答
0
投票

试试这个编码application/x-www-form-urlencoded而不是application/json;charset=UTF-8

© www.soinside.com 2019 - 2024. All rights reserved.