I keep getting: Unable to create request (bad url?) error message on a request like:
- (void)grabURLInBackground :(id)sender
{
NSURL *url= [NSURL URLWithString:@"http://api.website.com/api_requests/standard_request/getItemRequest={\"Id\":\"Logic\"}"];
ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];
[request addRequestHeader:@"X-WEBSITE-API-DEV-NAME" value:@"cghjm"];
[request setDelegate:self];
[request startAsynchronous];
}
- (void)requestFinished:(ASIHTTPRequest *)request
{
// Use when fetching text data
NSString *responseString = [request responseString];
NSLog(responseString);
}
- (void)requestFailed:(ASIHTTPRequest *)request
{
NSError *error = [request error];
NSLog(@"%@:%s Error: %@", [self class], _cmd, [error localizedDescription]);
}
I’m “VERY” new to Objective-C…
Thanks
-Brad
Change
-startAsynchronousto-startSynchronousand remove the line where you set the request’sdelegatetoself. Asynchronous means that it runs in the background, in which case you need to use the delegate methods. Since you’ve put everything in one method, you want to use a synchronous request.Edit
Initialize the URL like this: