Swift Digest Authentication async-http-klient

stemmer
0

Jeg prøver å lage et sammendrag autentisering ved hjelp av rask på toppen av swiftNIO. På slutten får jeg følgende feilmelding: Operasjonen kunne ikke fullføres. (NIO.NIOConnectionError feil 1.)

Her er min måte å gjøre:

// in the delegate I create my authorizationHeader
let authorizationHeader =  try httpClient.execute(request: digestRequest , delegate: delegate).wait()

deretter i hovedtråden er jeg gjøre følgende:

var request = try HTTPClient.Request(url: url, method: .GET)

request.headers.add(name: Authorization: \(authorizationHeader.description) , value: )
print (request.headers.description)
httpClient.execute(request: request).whenComplete { result in
    switch result {
    case .failure(let error):
        print (error.localizedDescription)
    case .success(let response):
        if response.status == .ok {
            print (response.status)
        } else {
            print (error in response)
        }
    }
}

Dessverre fant jeg ingen annen måte å lage spissen. Jeg måtte passere verdien av , fordi responsen header må være (Wikipedia): Authorization: og deretter resten. Her et eksempel på min genarated respons header: [( Autorisasjon: Digest username = \ gammelbruker \ realm = \ Testserver \, nonce = \ 4F4L1eHYktYv6n7LR4s5yyL5uMiVgKSg \, uri = \ http: // myurl \ , respons = \ 4bc3cdfc727bec9edebf6a55dac677a7 \, )]

Jeg er ikke sikker på om feilen: er det på grunn av min headerresponse eller fordi jeg skaper en ny forespørsel fra hovedtråden og ikke inne min delegat, men Httpclient er alltid den samme instans. Hvis den ligger på headerresponse, virker det som det ikke finnes noen måte å skrive direkte respons strengen inn i header hjelp async-http-klient.

Takket Arnold

Publisert på 13/01/2020 klokken 23:52
kilden bruker
På andre språk...                            

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more