Ios “如何删除警告”;来自'的条件强制转换;任何';至';任何对象';“永远成功”;

Ios “如何删除警告”;来自'的条件强制转换;任何';至';任何对象';“永远成功”;,ios,swift,nsurlsession,nsjsonserialization,Ios,Swift,Nsurlsession,Nsjsonserialization,我创建了一个类,当我试图将一个对象强制转换为AnyObject时,会收到一条警告消息。 警告是:“从'Any'到'AnyObject'的条件转换始终成功” 如何从文件中删除此警告 这是我的密码: class WebServices { class func getRequest( urlString: String, successBlock :@escaping (_ response :AnyObject)->Void, errorMsg:@escaping (_ errorM

我创建了一个类,当我试图将一个对象强制转换为AnyObject时,会收到一条警告消息。 警告是:“从'Any'到'AnyObject'的条件转换始终成功” 如何从文件中删除此警告

这是我的密码:

class WebServices
{
    class func getRequest( urlString: String, successBlock :@escaping (_ response :AnyObject)->Void, errorMsg:@escaping (_ errorMessage :String)->Void )
    {
        var request = URLRequest(url: URL(string: urlString)!)
        request.httpMethod = "GET"

        let task = URLSession.shared.dataTask(with: request) { (data, urlResponse, error) in

            DispatchQueue.main.async {
                if(error == nil)
                {
                    do {
// Here is the warning 
                        let responseJSON = try JSONSerialization.jsonObject(with: data!, options: .mutableContainers) as? AnyObject 
                        guard let _ = responseJSON else {
                            errorMsg("Some error has been occurred!")
                            return
                        }
                        successBlock(responseJSON!)
                    }
                    catch
                    {
                        errorMsg("Some error has been occurred!")
                    }
                }
                else
                {
                    errorMsg(error!.localizedDescription)
                }
            }
        }
        task.resume()
    }
}
如果你们正在读这篇文章,谢谢你们抽出时间

此函数

let responseJSON = try JSONSerialization.jsonObject(with: data!, options: .mutableContainers) as? AnyObject 
返回
Any
并将其强制转换为
AnyObject
,同样,最好是转换为预期的json内容,无论是数组还是字典

let responseJSON = try JSONSerialization.jsonObject(with: data!) as? [String:Any] 

并相应地更改此函数的完成时间

let responseJSON = try JSONSerialization.jsonObject(with: data!, options: .mutableContainers) as? AnyObject 
返回
Any
并将其强制转换为
AnyObject
,同样,最好是转换为预期的json内容,无论是数组还是字典

let responseJSON = try JSONSerialization.jsonObject(with: data!) as? [String:Any] 


并相应地更改完成时间

您为什么要这样做?任何对象?为什么要使用
AnyObject
而不使用
Any
?@Larme如果从AnyObject修改为Any,则会收到相同的警告。我们的想法是删除警告。问题是:“那么,这条信息是什么?”?读一下。试着理解它:“从‘Any’到‘Any’的条件转换总是成功的”为什么要将Any转换为Any?演员阵容是什么?为什么要选演员?你为什么选
as?任何对象
?为什么要使用
AnyObject
而不使用
Any
?@Larme如果从AnyObject修改为Any,则会收到相同的警告。我们的想法是删除警告。问题是:“那么,这条信息是什么?”?读一下。试着理解它:“从‘Any’到‘Any’的条件转换总是成功的”为什么要将Any转换为Any?演员阵容是什么?为什么要强制转换呢?如果我使用[Any],那么使用[String:Any]并不能从API获取任何数据。非常感谢施胡汗!如果我使用[Any],则正在使用[String:Any]不会从API获取任何数据。非常感谢施胡汗!