簡體   English   中英

不能在swift 2中替換任何對象類型的值

[英]Cannot subsript a value of type anyobject in swift 2

我正在遷移到Swift 2.0,我很好地使用了以下代碼。 但是我很快就出錯了2。

        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行中收到以下錯誤。

Cannot subscript a value of type 'AnyObject!' with an index of type 'String'

我該如何解決?

該錯誤告訴您不能對AnyObject類型的對象使用[“ status”],因為如果它不是字典,則可能無法使用。 您需要先將響應轉換為字典。

我看到您正在使用從未使用過的SRWebClient,但是根據他們的github,這似乎很安全:

let responseJSON = response! as Dictionary<String, String>

我猜他們首先在其代碼中序列化。 不過我不知道...在強制轉換之前,我要確保該對象是一個Dictionary。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM