2016-06-17 1 views
0

Je dois faire un post pour recevoir JSON retour pour remplir mon CoreData. Jusqu'à présent, je faisais seulement des GETs. Quelle que soit la combinaison lorsque je vois l'appel de Charles, rien n'est dans le corps.Swift RestKit ne publiera pas JSON dans le corps

let storedProcedureParams = 
    [ 
     "params": [ 
      [ 
      "name": "p_latitude", 
      "param_type": "IN", 
      "value": latitude 
      ], 
      [ 
      "name": "p_longitude", 
      "param_type": "IN", 
      "value": longitude 
      ], 
      [ 
      "name": "p_distance", 
      "param_type": "IN", 
      "value": distance 
      ], 
      [ 
      "name": "p_user", 
      "param_type": "IN", 
      "value" : user 
      ], 
      [ 
      "name": "p_appKey", 
      "param_type": "IN", 
      "value" : appDelegate.api_key 
      ] 
     ], 
     "schema": [ 
      "id": "integer", 
      "complete": "boolean" 
     ], 
     "wrapper": "record" 
    ] 

    let mapping = RKObjectMapping.requestMapping() 
    mapping.addAttributeMappingsFromDictionary(storedProcedureParams) 

    let requestDescriptor = RKRequestDescriptor(mapping:mapping,objectClass:Store.self, rootKeyPath:nil, method:RKRequestMethod.POST) 


    objectManager.addRequestDescriptor(requestDescriptor) 
    objectManager.addResponseDescriptor(responseDescriptor) 
    objectManager.requestSerializationMIMEType = RKMIMETypeJSON 
    objectManager.postObject(storedProcedureParams, path: "_proc/StoresByDistance", parameters: nil, 
          success:{ operation, mappingResult in 
           NSLog("success") 


     }, 
          failure:{ operation, error in 
           NSLog("Error loading list': \(error!.localizedDescription)") 
           //return nil 
     } 
    ); 

Rien d'évident?

Répondre

0

Évidemment, j'ai dû définir le requestDescriptor à zéro, puis utiliser les paramètres qui l'ont envoyé dans le corps.