J'ai essayé d'utiliser Alamofire et alamofireimage mais je n'arrive pas à obtenir la taille de fichier d'une image téléchargée de manière cohérente. Est-ce que j'utilise la mauvaise approche? car sûrement si Alamofire a téléchargé l'image, il saura quelle est la taille du fichier?AlamoFire: comment obtenir la taille de fichier de l'image téléchargée dans swift?
Voici l'exemple de code J'utilise
Alamofire.request(.GET, imageUrlToShow)
.responseImage { af_image in
debugPrint(af_image)
print(af_image.request) // Sometimes Content-Length is returned by other times not
if af_image.result.isFailure {
print("error")
completionhandler(imageInfo: nil, error: af_image.result.description)
}
if af_image.result.isSuccess {
if let serverResponse = af_image.response {
let serverHeaders = serverResponse.allHeaderFields
if let imageSize = serverHeaders["Content-Length"] as? String {
print("we got an imagesize")
}
Merci, mais ce n'est pas que convertir le fichier en JPG et obtenir la taille du fichier à partir de cela. Cela ne va pas être le même que l'image originale. Et la conversion en JPG nuira à la qualité (JPG est l'équivalent d'un photocopieur ... les temps de déplacement que vous convertissez - plus la qualité est faible) –
Vous pouvez utiliser UIImagePNGRepresentation et UIImageJPEGRepresentation dépendent de l'extension que vous voulez télécharger. –
Oui - mais les deux font encore la conversion .. et crée de la complexité comme et comment puis-je faire face à des choses comme GIF ou webp? Je suis surpris de son assez complexe à télécharger un fichier à partir d'une URL - et obtenir la taille des octets? –