2017-09-18 1 views
0

Je veux créer une demande Alamofire avec en-têtes avec des valeurs booléennes, mais le HTTPHeaders accepte juste un dictionnaire [String:String].Alamofire/Swift - Comment ajouter une valeur d'en-tête booléenne à la demande

Que dois-je faire?

Exemple d'en-tête que ce que je dois:

static let headers: HTTPHeaders = [ 
    "Content-Type":"application/json", 
    "boolValue": true 
] 
+0

Ajout de 0 ou 1 instance de true/false, Bool dans les paramètres codés d'URL codés comme 0 et 1 –

+0

Je dois ajouter l'en-tête de demande non sur l'URL. Pouvez-vous me donner un exemple? – afrodev

+0

Vous pouvez également ajouter dans l'en-tête comme ci-dessus @afrodev –

Répondre

0

Pour répondre cela,

créer un httpHeaders [String:String] comme ceci:

static let headers: HTTPHeaders = [ 
    "Content-Type":"application/json", 
    "boolValue": "true" 
] 

j'ai changé mon encodeur demande Alamofire de URLEncoding.default à JSONEncoding.default comme t son:

let req = Alamofire.request(url, method: .get, parameters: nil, encoding: JSONEncoding.default, headers: header) 

Cela se produit parce que Alamofire sur URLEnconding convertir pas le dictionnaire [chaîne: String] aux valeurs primitives et JSONEncoding fait.