Как включить переменную в nsurl iphone - PullRequest
0 голосов
/ 25 сентября 2011

это то, что у меня есть

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {    

    // Override point for customization after application launch.

    // Add the view controller's view to the window and display.
    responseData = [[NSMutableData data] retain];
    results = [NSMutableArray array];
    NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"https://maps.googleapis.com/maps/api/place/search/json?location=38.69747988499999,-121.3570182875&radius=9900&types=bar&sensor=false&key=fake_key"]];
    [[NSURLConnection alloc] initWithRequest:request delegate:self];

    return YES;

}

и с URL я хотел бы иметь переменную для местоположения.в основном мое приложение получает местоположение, и я хотел бы внедрить это в URL, чтобы я мог найти бары вокруг ... как бы я это сделал

я думал

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {    

    // Override point for customization after application launch.

    // Add the view controller's view to the window and display.
    responseData = [[NSMutableData data] retain];
    results = [NSMutableArray array];
    NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"https://maps.googleapis.com/maps/api/place/search/json?location=%@,%@&radius=9900&types=bar&sensor=false&key=fake_key", longitude,latitude]];
    [[NSURLConnection alloc] initWithRequest:request delegate:self];

    return YES;

}

но это не сработало

, пожалуйста, помогите

Ответы [ 2 ]

3 голосов
/ 25 сентября 2011

Использовать + stringWithFormat из NSString:

[NSURL URLWithString:[NSString stringWithFormat:@"https://maps.googleapis.com/maps/api/place/search/json?location=%@,%@&radius=9900&types=bar&sensor=false&key=fake_key", longitude,latitude]]
0 голосов
/ 26 сентября 2011

Итак, я вижу много людей, использующих NSURL, и я считаю, что если бы они посмотрели запрос ASIFormDataRequest, они обнаружили бы, что он намного безопаснее и намного проще в использовании.Чтобы использовать ASIFormDataRequest, вы должны загрузить его отсюда http://allseeing -i.com / ASIHTTPRequest / Как использовать Однако после загрузки это значительно облегчает жизнь.Причина, по которой я указываю на это, заключается в том, что она заставляет все соответствовать протоколу, чтобы вы знали, возникают ли у вас проблемы из-за% f или% @, потому что это заставляет вас использовать строку.Это значительно облегчает отладку.Вот пример кода использования ASIFormData Request

NSURL *url = [NSURL URLWithString:@"https://maps.googleapis.com/maps/api/place/search/json"];
ASIFormDataRequest *request_ror = [ASIFormDataRequest requestWithURL:url];
[request_ror setRequestMethod:@"POST"];
[request_ror setPostValue:[NSString stringWithFormat:@"%f", longitude] forKey:@"longitude"];
[request_ror setValidatesSecureCertificate:NO];
[request_ror setTimeOutSeconds:30];
[request_ror setDelegate:self];
[request_ror startAsynchronous];
...