Comment voulez-vous ajouter des en-têtes de dataTaskWithUrl?
J'ai un dataTaskWithUrl
:
var headers: NSDictionary = ["X-Mashape-Key": "my-secret-key" , "Accept" : "application/json"]
var stringUrl = "https://restcountries-v1.p.mashape.com/all"
stringUrl = stringUrl.stringByReplacingOccurrencesOfString(" ", withString: "+")
let url = NSURL(string: stringUrl)
let session = NSURLSession.sharedSession()
let task = session.dataTaskWithURL(url!, completionHandler: { (data, response, error) -> Void in
if let jsonResult = NSJSONSerialization.JSONObjectWithData(data, options: NSJSONReadingOptions.MutableContainers, error: nil) as? NSDictionary{
println(jsonResult)
}else{
println("error")
}
})
task.resume()
Je veux ajouter des en-têtes à ma tâche.
En d'autres termes, je voudrais le convertir ce code swift:
NSDictionary *headers = @{@"X-Mashape-Key": @"my-secret-key", @"Accept": @"application/json"};
UNIUrlConnection *asyncConnection = [[UNIRest get:^(UNISimpleRequest *request) {
[request setUrl:@"https://restcountries-v1.p.mashape.com/all"];
[request setHeaders:headers];
}] asJsonAsync:^(UNIHTTPJsonResponse *response, NSError *error) {
NSInteger code = response.code;
NSDictionary *responseHeaders = response.headers;
UNIJsonNode *body = response.body;
NSData *rawBody = response.rawBody;
}];
Je suis nouveau sur dataRequests. Je ne comprends pas l'Objectif de code en C mais j'ai fait une supposition quand j'ai regardé le code. J'ai besoin d'utiliser les en-têtes de parce que je si je viens d'essayer d'aller à
https://restcountries-v1.p.mashape.com/all directement, j'obtiens une erreur. J'ai reçu cet Objectif de code C à partir de ce site: https://www.mashape.com/fayder/rest-countries-v1. Toute aide dans la bonne direction serait très apprécié.
Grâce
Vous devez vous connecter pour publier un commentaire.
C'est la même réponse que @Leo réponse mais la syntaxe Swift a un peu changé et c'est pourquoi je pense qu'il est bon de "mise à jour de la réponse un peu". Cela devrait donc fonctionner avec Swift 3.
Mise à jour pour Swift 4+:
Vieux Post:
Si vous souhaitez utiliser dataTask