首页 > 解决方案 > 如何在 Alamofire 参数中发送 Int 数组而不是 JSON

问题描述

我的问题是如何Int ([1,2,3,4])在 Alamofire 中发送一组 in 参数。我的数组不是 JSON 格式,只是一个 Int 数组,因为服务器期望这个([1,2,3,4])没有任何键。

在我的代码中,如何"userInfos:[Int]"在 Alamofire 参数中发送函数参数?

 func putPreferences(workId: String, userInfos:[Int] ) {

        let token = NSObject.getValueForKey(key: "userToken") as! String
        let headers: HTTPHeaders = [
            "Authorization" : token,
            "Content-type" : "application/json"
        ]

        let jsonEncoder = JSONEncoder()
        let jsonData = try? jsonEncoder.encode(userInfos)
        let json = (try? JSONSerialization.jsonObject(with: jsonData!, options: [])) as? [String:AnyObject]
        print(json)
        let url = "URL"
        print(url)
        Alamofire.request(url, method: .put, parameters: json , encoding: JSONEncoding.default, headers: headers)
            .validate(statusCode: 200..<501)

            .responseJSON { response in

                switch response.result {
                case .success(let data):
                    if (response.response?.statusCode)! <= 300{
                        print(data)

                    }
                    else{
                        print(data)
                        print("error")
                    }
                case .failure(let error):
                    // self.signupDelegtae?.signUpFailed()
                    print(error)
                }
        }
    }


标签: swiftparametersalamofire

解决方案


推荐阅读