首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不能在Cannot 2中将任何对象类型的值子化。

不能在Cannot 2中将任何对象类型的值子化。
EN

Stack Overflow用户
提问于 2015-09-25 21:59:17
回答 1查看 478关注 0票数 0

我正在迁移到快速2.0,我很好地使用了下面的代码。但我在斯威夫特2中犯了错误。

代码语言:javascript
复制
        SRWebClient.POST("upload url")
            .data(imageData, fieldName:"image_field", data: ["username":"username","key":"test"])
            .send({(response:AnyObject!, status:Int) -> Void in
                if status == 200 {
                    var s_status=response?["status"] as! Int
...

对于var s_status行,我将得到以下错误。

代码语言:javascript
复制
Cannot subscript a value of type 'AnyObject!' with an index of type 'String'

我怎么才能修好它?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-09-25 22:06:25

错误告诉您,您不能在AnyObject类型的对象上使用“状态”,因为如果它不是字典,它可能无法工作。您需要首先将响应转换为字典。

我看到您使用的是SRWebClient,我从未使用过,但是根据他们的github,这似乎是安全的:

代码语言:javascript
复制
let responseJSON = response! as Dictionary<String, String>

我猜他们应该先在代码中序列化。不过我不知道..。在强制转换之前,我要确保该对象是字典。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32791232

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档