alamofire encabezado + parámetros

Hola Mundo,

Vengo porque, yo intente enviar los encabezados con los parámetros en la misma función como esta:

Alamofire.Manager.sharedInstance.request(.PUT, "url", headers: headers, parameters: parameters)

pero tal vez usted ya sabía que sólo los encabezados son enviados.

He intentado también de esta manera:

 let manager = Alamofire.Manager.sharedInstance
 manager.session.configuration.HTTPAdditionalHeaders = [
            "Authorization": token]

 manager.request(.PUT, "http://192.168.99.100:3030/users/\(identity)", parameters: parameters, encoding:.JSON)

pero las cabeceras no son enviados..

¿Cuál es la forma más fácil de implementar en los encabezados de alamofire?

Gracias por adelantado 😉

saludos,

InformationsquelleAutor G Clovs | 2016-02-18

2 Kommentare

  1. 8

    conjunto de encabezados en el diccionario al igual que otros parámetros y que se apruebe en los encabezados. por ejemplo

    let Auth_header    = [ "Authorization" : token ]
    
    Alamofire.Manager.sharedInstance.request(.PUT, "url", headers: Auth_header, parameters: parameters)  

    Usted puede comprobar los detalles de La Autenticación Básica de HTTP

    La Autenticación Básica de HTTP

    El método de autenticación en la Solicitud se proporcionará automáticamente una NSURLCredential a un NSURLAuthenticationChallenge cuando sea apropiado:

    let user = "user"
    let password = "password"
    
    Alamofire.request(.GET, "https://httpbin.org/basic-auth/\(user)/\(password)")
         .authenticate(user: user, password: password)
         .responseJSON { response in
             debugPrint(response)
         }

    Dependiendo de su servidor de aplicación, un encabezado de Autorización también puede ser apropiado:

     let user = "user"
     let password = "password"
    
     let credentialData = "\(user):\(password)".dataUsingEncoding(NSUTF8StringEncoding)!
     let base64Credentials = credentialData.base64EncodedStringWithOptions([])
    
     let headers = ["Authorization": "Basic \(base64Credentials)"]
    
     Alamofire.request(.GET, "https://httpbin.org/basic-auth/user/password", headers: headers)
         .responseJSON { response in
             debugPrint(response)
         }
    • Gracias a los que me dan el Camino 😉
  2. 0

    Yo ya hice lo que dijiste en el primer comentario, pero de todas maneras no son sólo las cabeceras enviadas:

    let parameters : [String : NSString] = [
                "username": username,
                "email": email,
                "currentPassword": currentpassword,
                "newPassword": newpassword]        
    let Auth_header    = [ "Authorization" : token ]
    
    Alamofire.Manager.sharedInstance.request(.PUT, "url", headers: Auth_header, parameters: parameters)

    Resuelto: El probleme es que yo hice no dar la codificación de los parámetros de

    Alamofire.Manager.sharedInstance.request(.PUT, "url", headers: Auth_header, parameters: parameters, encoding: .JSON)

    Gracias a EI Capitán

Kommentieren Sie den Artikel

Bitte geben Sie Ihren Kommentar ein!
Bitte geben Sie hier Ihren Namen ein

Pruebas en línea