swift - 来自文本字段的 Alamofire 参数

标签 swift alamofire

@IBAction func login(sender: UIButton) {
        let parameters = [
            "username": usernameTextField?.text,
            "password": passwordTextField?.text
        ]


        Alamofire.request(.POST, "http://192.168.1.107:8080/api/v1/user/login", parameters: parameters, encoding: .JSON)
            .validate()
            .responseJSON { response in
                switch response.result {
                case .Success(let JSON):
                    print("Validation Successful")
                    if (JSON["status"] as! String != "Success") {
                        self.popup("Invalid Account", message: "Please check your username and password and try again")
                    }
                case .Failure(let error):
                    print(error)
                }
        }

    }

当我将用户名和密码硬编码在字典中时,这些参数工作正常。但是当我将其更改为文本字段时,我收到错误消息 Cannot conversion value of type [String: String?] to [String: Anyobject]?

如何使参数为anyobject,以便它被接受?

最佳答案

错误消息显示参数中有可选类型。

如果您在运行时创建文本字段,只需在使用前解开值即可。 如果不在运行时创建,只需像

一样使用它
let parameters = [
        "username": usernameTextField.text,
        "password": passwordTextField.text
    ]

关于swift - 来自文本字段的 Alamofire 参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38519817/

相关文章:

swift - 带反斜杠的 JSON 编码

xcode - 如何在同一源文件中有条件地编译特定于版本的 Swift(1.2 vs 2.0)代码?

ios - 如何在 Alamofire 中使用 POST 命令发送这个 JSON 对象?

swift - CLLocation + 天气(Alamofire)问题

ios - 使用 Alamofire 的 POST 请求时设置为参数的对象数组

ios - 等到多个请求被执行并且它们的完成 block

swift - 检查项目是否存在的 UI 测试在 Swift 中不起作用

java - 将 java 库导入到 OS X 的 swift 项目

ios - 使节点受重力影响没有影响; swift

ios - Swift 中的多维对象数组错误?