Note that there are some explanatory texts on larger screens.

plurals
  1. POASIHTTP post works different than NSMutableURLRequest
    primarykey
    data
    text
    <p>i used to have a method to post:</p> <pre><code>-(void) execMethod:(NSString*)methodName andParams:(NSArray*)parameters withID:(NSString*)identificator { //RPC NSMutableDictionary* reqDict = [NSMutableDictionary dictionary]; [reqDict setObject:methodName forKey:@"method"]; [reqDict setObject:parameters forKey:@"params"]; [reqDict setObject:identificator forKey:@"id"]; //RPC JSON NSString* reqString = [NSString stringWithString:[reqDict JSONRepresentation]]; NSData* requestData = [NSData dataWithBytes:[reqString UTF8String] length:[reqString length]]; //Request NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:url]; //prepare http body [request setHTTPMethod: @"POST"]; [request setValue:[NSString stringWithFormat:@"%d", [requestData length]] forHTTPHeaderField:@"Content-Length"]; [request setValue:@"application/json" forHTTPHeaderField:@"Accept"]; [request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"]; [request setHTTPBody: requestData]; if (urlConnection != nil) { [urlConnection release]; urlConnection = nil; } urlConnection = [[NSURLConnection alloc] initWithRequest:request delegate:self startImmediately:YES]; [request release]; } </code></pre> <p>Now I want to use ASIHttp and I wrote that function:</p> <pre><code>-(void)startRequest:(NSString*)methodName andParams:(NSArray*)parameters withID:(NSString*)identificator { NSMutableDictionary* reqDict = [NSMutableDictionary dictionary]; [reqDict setObject:methodName forKey:@"method"]; [reqDict setObject:parameters forKey:@"params"]; [reqDict setObject:identificator forKey:@"id"]; //RPC JSON NSString* reqString = [NSString stringWithString:[reqDict JSONRepresentation]]; //Request NSData* requestData = [NSData dataWithBytes:[reqString UTF8String] length:[reqString length]]; asiRequest=[ASIFormDataRequest requestWithURL:url]; [asiRequest addRequestHeader:@"Accept" value:@"application/json"]; [asiRequest addRequestHeader:@"Content-Length" value:[NSString stringWithFormat:@"%d", [requestData length]]]; [asiRequest addRequestHeader:@"Content-Type" value:@"application/x-www-form-urlencoded"]; [asiRequest appendPostData:requestData]; [asiRequest setDelegate:self]; [asiRequest startAsynchronous]; } </code></pre> <p>But it doesn't behave same.It should return me a json. First one works correctly but second doesn't. Where is my fault? </p> <p>Thanks</p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload