Bonjour,
je cherche a obtenir le type et la taille d'un fichier localisé sur un serveur avant de decider de le telecharger. Pour cela je voudrais créer une fonction qui me retourne les deux valeurs. J'ai trouvé sur les forums deux fonctions qui permettent chacune de retourner soit le type soit la taille. Le problème est que je n'arrive pas a les combiner en une seule fonction.
Voici les deux fonctions:
celle-ci recupere la taille:
Je ne sais pas comment combiner ces deux fonctions en une seule qui puissent renvoyer directement deux valeurs, le type et la taille.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29 func fetchContentLength(for url: URL, completionHandler: @escaping (_ contentLength: Int64?) -> ()) { var request = URLRequest(url: url) request.httpMethod = "HEAD" let task = URLSession.shared.dataTask(with: request) { (data, response, error) in guard error == nil,let response = response as? HTTPURLResponse,let contentLength = response.allHeaderFields["Content-Length"] as? String else{ completionHandler(nil) return } completionHandler(Int64(contentLength)) } task.resume() } et celle ci recupere le type : func getContentType(for url: URL, completionHandler: @escaping (_ contentType: String?) -> ()) { var request = URLRequest(url: url) request.httpMethod = "HEAD" let task = URLSession.shared.dataTask(with: request) { (data, response, error) in guard error == nil,let response = response as? HTTPURLResponse,let contentType = response.allHeaderFields["Content-Type"] as? String else{ completionHandler(nil) return } completionHandler(contentType) } task.resume() }
Est-ce que quelqu'un pourrait m'aider? SVP
Cordialement,
Partager