Alamofire/Swift2: инициализация переменной в случае, если обратный вызов .Success выдает EXC_BAD_INSTRUCTION?

        Alamofire.request(.POST, endpoint, parameters: params)
    .responseJSON { request, response, result in

        switch result {
            case .Success(let json):
            var customerData:[String:AnyObject] = [String:AnyObject]()
// throws: Thread 1:EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP, subcode=0x0)

Я получаю ту же ошибку, если объявляю переменную вне запроса и пытаюсь установить customerData["whatever"] = "some value"


person Sam Luther    schedule 29.09.2015    source источник


Ответы (1)


Пожалуйста, проверьте этот код.

 var customerData = NSDictionary() as! [String : AnyObject]
 customerData["One"] = 433
 customerData["Two"] = "2323"

 print(customerData)
 Output:
 ["One": 433, "Two": 2323]

Он хорошо работает в бета-версии Playground xcode 7.1.

person Narendra G    schedule 29.09.2015
comment
Кьюл, но проблема не в этом. var customerData = [String: AnyObject]() также работает на игровой площадке xcode, брат... - person Sam Luther; 29.09.2015
comment
проблема в var в контексте обратного вызова .Success - person Sam Luther; 29.09.2015
comment
оказывается, я был случаем pebkac, пытался получить доступ к ключу словаря, которого не существовало (опечатка), поэтому не в восторге от этого откровения breaux :( Thread 1:EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP, subcode=0x0) является чертовски способ сказать это, да? В любом случае, спасибо за помощь, Нарендра. - person Sam Luther; 29.09.2015