Ambiguous use of 'subscript'

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/klkxxy/article/details/78502449



在接入环信的时候无啦啦整个项目报了一堆这样的错误,然后百度了,许久没有结果。
用百度翻译得知Ambiguous use of 'subscript'的中文意思是“下标”的歧义用法。

所以,我就猜,是不是语法问题而已。因为我创建的

 func getQiniuToken(completion:@escaping (_ data:String)->()){

        

        let urlStr = baseURL + qiNiuTokenURL

        

        let parameters = ["op":"token","param":"{\"type\":\"video\"}"] as [String : Any]

        

        request(method: .post, URLString: urlStr, parameters: parameters) { (respone) in

            

            let data = respone["data"]  as? String

            

            userDefault.set(data, forKey: uploadToken)

            

            completion(data ?? "")

        }

        

    }


提示respone报错,报Ambiguous use of 'subscript',后来发现respone是[Any]类型的,所以先转成[String:Any]就好了,要在guard里面转。

 func getQiniuToken(completion:@escaping (_ data:String)->()){

        

        let urlStr = baseURL + qiNiuTokenURL

        

        let parameters = ["op":"token","param":"{\"type\":\"video\"}"] as [String : Any]

        

        request(method: .post, URLString: urlStr, parameters: parameters) { (respone) in

            

            guard let res = respone as? [String:Any] else{

                return

            }

            

            let data = res["data"]  as? String

            

            userDefault.set(data, forKey: uploadToken)

            

            completion(data ?? "")

        }

        

    }



然后就好了。GGGGG.大吉大利今晚吃鸡


猜你喜欢

转载自blog.csdn.net/klkxxy/article/details/78502449