Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Alamofire 4.0 Upload MultipartFormData Header

How do we add an authentication header to the upload function of Alamofire 4.0?

below is the sample code, however I see no way in adding a header to the function.

Alamofire.upload(
    multipartFormData: { multipartFormData in
        multipartFormData.append(unicornImageURL, withName: "unicorn")
        multipartFormData.append(rainbowImageURL, withName: "rainbow")
    },
    to: "https://httpbin.org/post",
    encodingCompletion: { encodingResult in
        switch encodingResult {
        case .success(let upload, _, _):
            upload.responseJSON { response in
                debugPrint(response)
            }
        case .failure(let encodingError):
            print(encodingError)
        }
    }
)

Previous version of alamofire supported adding header directly, but not the new one. Any ideas?

like image 376
JayVDiyk Avatar asked Sep 22 '16 05:09

JayVDiyk


1 Answers

I got the solution.

Alamofire.upload(multipartFormData:{ multipartFormData in
         multipartFormData.append(unicornImageURL, withName: "unicorn")
         multipartFormData.append(rainbowImageURL, withName: "rainbow")},
       usingThreshold:UInt64.init(),
       to:"https://httpbin.org/post",
       method:.post, 
       headers:["Authorization": "auth_token"], 
       encodingCompletion: { encodingResult in
        switch encodingResult {
        case .success(let upload, _, _):
            upload.responseJSON { response in
                debugPrint(response)
            }
        case .failure(let encodingError):
            print(encodingError)
        }
    })

Hope it will help you.

like image 71
Ekta Padaliya Avatar answered Nov 09 '22 18:11

Ekta Padaliya