Преобразование текста Textview в параметры запроса поста - разработка iphone - PullRequest
1 голос
/ 15 июня 2009

Я хочу передать свой текстовый контент на сервер с помощью пост-запроса, но у меня проблема с кодировкой. Делать | нужно конвертировать например заготовки в + или% 20 вручную или есть библиотека, поддерживаемая какао или какой-либо другой третьей стороной? Это что-то тривиальное? Я застрял с этим простым шагом на несколько часов! :)

Ответы [ 2 ]

3 голосов
/ 15 июня 2009

Посмотрите на пример, как добавить процентные экранирования в http://www.rudis.net/content/2009/01/26/adding-percent-esacpes-cocoa,, цитируя автора:

Один очевидный способ сделать это - вызвать NSString

.

-(NSString*)stringByAddingPercentEscapesUsingEncoding:(NSStringEncoding)encoding

Метод. Хотя это делает хорошую работу, это не совершенен и будет пропустить вещи как "/", что может сделать некоторые веб услуги плакать. Лучший способ сделать это Кодировка должна использовать:

CFStringRef CFURLCreateStringByAddingPercentEscapes (
   CFAllocatorRef allocator,
   CFStringRef originalString,
   CFStringRef charactersToLeaveUnescaped,
   CFStringRef legalURLCharactersToBeEscaped,
   CFStringEncoding encoding
);

Пример кода после перехода (см. Ссылку выше).

1 голос
/ 15 июня 2009

Другой пример можно найти по адресу http://deusty.blogspot.com/2006/11/sending-http-get-and-post-from-cocoa.html. В примере, на который ссылается stefanB, есть более полный список символов, которые необходимо экранировать.

...