2017-01-08 2 views
0

Request Adapter of Alamofire에 GET 매개 변수를 추가하려고합니다. 그러나 요청 어댑터에서 HTTPHeader 필드 만 추가 할 수 있습니다.Alamofire의 요청 어댑터에 GET 매개 변수 추가

// MARK: - RequestAdapter 

func adapt(_ urlRequest: URLRequest) throws -> URLRequest { 
    if let url = urlRequest.url, url.lastPathComponent.hasPrefix(baseURLString) { 
     var urlRequest = urlRequest 

     // Want to inject param here 
     // e.g. urlRequest.addParam(param: "session", value: sessionToken") 

     return urlRequest 
    } 

    return urlRequest 
} 

나는 경로에 대해 구성된 라우터를 가지고 있지만 내가 원하는 이후 내 AuthHandler 내가 내 sessionToken을 주입하려는 모든 인증 관련 물건에 대한 책임을 :

현재 내 request adapter는 것 같습니다. 이렇게하면 RequestRetrier과 함께 HTTP 401 관련 오류가 처리됩니다.

urlRequest를 변경하는 가장 좋은 방법은 무엇입니까?

답변

1

당신은

return URLEncoding.queryString.encode(urlRequest, with: params) 

감사에게이 완벽하게 작동

+0

스리 람을

let params: Parameters = ["session": sessionToken] return URLEncoding.default.encode(urlRequest, with: params) 

(또는)을 시도 할 수 있습니다. 감사! – Emptyless

관련 문제