2014-11-25 13 views

risposta

17

Penso che questo codice possa funzionare.

var alamofireManager : Alamofire.Manager? 

func some(){ 
    let configuration = NSURLSessionConfiguration.defaultSessionConfiguration() 
    configuration.timeoutIntervalForResource = 2 // seconds 

    self.alamofireManager = Alamofire.Manager(configuration: configuration) 
    self.alamofireManager!.request(.GET, "http://example.com/") 
    .response { (request, response, data, error) in 

    } 
} 
+3

Perché configuration.timeoutIntervalForResource e non configuration.timeoutIntervalForRequest? –

+2

Setting timeoutIntervalForRequest ha risolto il mio problema di timeout. In precedenza, le lunghe richieste a un'API erano scadute. – djbp

0

Questo è come è possibile utilizzare un timeout per-richiesta utilizzando URLRequest:

Alamofire.request(URLRequest(url: ..., cachePolicy: ..., timeoutInterval: 10)) 
    .response(...) 
+0

Anche se questo snippet di codice può essere la soluzione, [compresa una spiegazione] (// meta.stackexchange.com/questions/114762/explaining-entally- code-based-answers) aiuta davvero a migliorare la qualità del tuo post. Ricorda che stai rispondendo alla domanda per i lettori in futuro, e queste persone potrebbero non conoscere le ragioni del tuo suggerimento sul codice. – milo526