&引用;文件“;照片.jpg”;不能’;无法打开,因为其内容的文本编码可以’;“不确定。”;ios swift中的错误

&引用;文件“;照片.jpg”;不能’;无法打开,因为其内容的文本编码可以’;“不确定。”;ios swift中的错误,swift,xcode,Swift,Xcode,我是ios新手。我使用了firebase google和facebook认证,在注册时我得到了当前用户的照片URL。我使用PINRemoteImage library获取图像并将其设置为imageview,但在测试过程中,出现以下错误 Domain=nscocaerorrordomain code=264“无法打开文件”photo.jpg,因为无法确定其内容的文本编码。”UserInfo={NSURL=} 下面是访问图像的代码: let userInfo = network.getCurrent

我是ios新手。我使用了firebase google和facebook认证,在注册时我得到了当前用户的照片URL。我使用
PINRemoteImage library
获取图像并将其设置为imageview,但在测试过程中,出现以下错误

Domain=nscocaerorrordomain code=264“无法打开文件”photo.jpg,因为无法确定其内容的文本编码。”UserInfo={NSURL=}

下面是访问图像的代码:

let userInfo = network.getCurrentUserDate()
        setTextFields(userInfo: userInfo)


func setTextFields(userInfo:UserData){
        do{
            try profileImage.pin_setImage(from: URL(string: String(contentsOf: userInfo.getImageUrl()))!)
        }catch{
            print(error)
        }
    }
这里
网络
是以下类的对象

class Networking{
    func getCurrentUserDate()->UserData{
        let currentUser = Auth.auth().currentUser
        return UserData(username: (currentUser?.displayName)!, email: 
        (currentUser?.email)!, url: (currentUser?.photoURL)!)
    }
}

//Here userinfo is object of following class 

class UserData{
    var userName:String
    var useremail:String
    var imageUrl:URL

    init(username:String,email:String,url:URL) {
        userName = username
        useremail = email
        imageUrl = url
    }

    func getuserName() -> String {
        return userName
    }

    func getEmail() -> String {
        return useremail
    }

    func getImageUrl() -> URL {
        return imageUrl
    }
}

谁能告诉我我的代码有什么问题吗首先你根本不需要
get…()
方法,只需使用
userInfo.imageUrl

class UserData {
    var userName: String
    var useremail: String
    var imageUrl: URL

    init(username: String, email: String, url: URL) {
        userName = username
        useremail = email
        imageUrl = url
    }
}
如果将
UserData
声明为
struct
,则不需要初始值设定项

struct UserData {
    var userName, useremail: String
    var imageUrl: URL
} 
如果这三个属性/成员不改变,则将它们声明为常量

struct UserData {
    let userName, useremail: String
    let imageUrl: URL
} 

出现此错误的原因是给定URL中没有
字符串
,图像保存为原始
数据

直接使用
imageUrl
,将
setTextFields
更改为

func setTextFields(userInfo: UserData) {
    do {
        try profileImage.pin_setImage(from: userInfo.imageUrl)
    } catch {
        print(error)
    }
}

哦,对不起,伙计,我意识到了我的错误,该方法返回的url我认为是一个字符串,并试图将其转换为url。您试图将其转换为url并自行加载数据。