Cours SafetyFirst - Problème Alamofire

Bonjour

Je suis en train de faire la formation IOS12, j’en suis à la section 7.5, pour télécharger la liste de mots de passe usuels, et Xcode me donne 4 erreurs lorsque je crée la fonction de téléchargement :

‹ Request › initializer is inaccessible due to ‹ internal › protection level
Cannot convert value of type ‹ String › to expected argument type ‹ UUID ›
Missing argument label ‹ id: › in call
Missing arguments for parameters ‹ underlyingQueue ›, ‹ serializationQueue ›, ‹ eventMonitor ›, ‹ interceptor ›, ‹ delegate › in call

import Foundation
import Alamofire

class SecurityManager  {

    public static var shared:SecurityManager {
        if s_securityManager == nil {
            s_securityManager = SecurityManager()
        }
        return s_securityManager!
    }
    
    private static let TOP100_PASSWORD_URL = "https://raw.githubusercontent.com/danielmiessler/SecLists/master/Passwords/Common-Credentials/10-million-password-list-top-100.txt"
    
    private init () {
        
    }
    
    func downloadPasswordsFile () {
        Alamofire.Request(SecurityManager.TOP100_PASSWORD_URL)

    }
    
}

Comment est-ce que je peux corriger ça ?
Merci

Bon, ça fait sauter l’erreur « initializer » en mettant

AF.request(SecurityManager.TOP100_PASSWORD_URL)

à la place de

Alamofire.Request(SecurityManager.TOP100_PASSWORD_URL)

Je vais voir la suite du cours si ça fonctionne correctement…

Salut Laurent, vérifie que tu aies bien la même version de Alamofire que moi. Si tu a pris la dernière elle est probablement différente car le cours iOS 12 date de 2018

Bonjour Maxime,

Effectivement j’ai une version plus récente que celle du cours (5.1.0 au lieu de 4.4.0), mais je n’ai pas pu installer cette 4.4.0, le manager de Xcode ne veut pas installer en dessous de 4.8 (il me semble, je suis un peu perdu sur tous les essais que j’ai fait), et le problème était identique.

En cherchant je suis tombé sur cette solution https://github.com/Alamofire/Alamofire/issues/2926, ça a l’air de fonctionner mais je n’ai pas encore été suffisament plus loin dans le cours pour être sûr.