Я рекомендую использовать RestKit Framework .С restkit вы просто делаете:
// create the parameters dictionary for the params that you want to send with the request
NSDictionary* paramsDictionary = [NSDictionary dictionaryWithObjectsAndKeys: @"00003",@"SignalId", nil];
// send your request
RKRequest* req = [client post:@"your/resource/path" params:paramsDictionary delegate:self];
// set the userData property, it can be any object
[req setUserData:@"SignalId = 00003"];
И затем, в методе делегата:
- (void)request:(RKRequest *)request didLoadResponse:(RKResponse *)response {
// check which request is responsible for the response
// to achieve this, you can do two things
// check the parameters of the request like this
NSLog(@"%@", [request URL]); // this will print your request url with the parameters
// something like http://myamazingrestservice.org/resource/path?SignalId=00003
// the second option will work if your request is not a GET request
NSLog(@"%@", request.params); // this will print paramsDictionary
// or you can get it from userData if you decide to go this way
NSString* myData = [request userData];
NSLog(@"%@", myData); // this will log "SignalId = 00003" in the debugger console
}
Таким образом, вам никогда не потребуется отправлять параметры, которые не используются на стороне сервера.Просто чтобы отличить ваши запросы.Кроме того, класс RKRequest имеет множество других свойств, которые можно использовать для проверки того, какой запрос соответствует данному ответу.Но если вы отправляете несколько идентичных запросов, я думаю, что userData является лучшим решением.
RestKit также поможет вам с другими распространенными задачами интерфейса отдыха.