Escape-символы в NSURLRequest

Я пытаюсь передать запрос на URL-адрес с помощью HTTP POST на iPhone. Тело HTTP содержит несколько escape-символов.

NSString *requestMessage=[NSString stringWithString:@"?username/u001password/u001description"];
    NSMutableURLRequest *url=[NSMutableURLRequest requestWithURL:[NSURL URLWithString:@"http://welcome.com"]];
    [url setHTTPMethod:@"POST"];
    [url setHTTPBody:[requestMessage dataUsingEncoding:NSUTF8StringEncoding]];
     NSURLConnection *theConnection=[[NSURLConnection alloc] initWithRequest:url delegate:self];

escape-символ здесь - / u001 .

Используя этот код, я не не получить никаких правильных ответов. Я думаю, что проблема только с побегами. Пожалуйста, дайте мне решение о том, как создать escape-последовательность, подобную этой, в Какао. Заранее спасибо.

1
задан Josh Caswell 24 March 2011 в 07:08
поделиться

2 ответа

Вы перепутали косую черту (/) с обратной косой чертой (\). Для создания escape-последовательности вам понадобится обратная косая черта; косая черта - это просто косая черта, а «/ u001» - это просто косая черта, буква u, две цифры ноль и одна цифра.

Тем не менее, если вы действительно хотите включить U + 0001 в свою строку, даже \ u001 неверно. Вы хотите \ x01 или, может быть, \ u0001 (но я, кажется, помню, что GCC жалуется, если вы используете \ u для символа ниже U + 0100).

Я действительно задаюсь вопросом, почему серверу требуется U + 0001 в качестве разделителя. Существуют ли общедоступные документы API для запрашиваемого сервера?

2
ответ дан 2 September 2019 в 21:55
поделиться

От чего вы хотите сбежать? Я не совсем понимаю, что вы пытаетесь сделать. Вы хотите написать «&»? Затем сделать его. Это не HTML.

Кроме того, [NSString stringWithString: @ "… постоянная строка…"] является сверхтекучей. @ "… постоянная строка…" - это все, что вам нужно.

В NSString есть метод для добавления процентных переходов к URL-адресам: - (void) stringByAddingPercentEscapesUsingEncoding: . Может это то, что вы ищете?

0
ответ дан 2 September 2019 в 21:55
поделиться