Вызов команды curl в Objective C

Я хочу вызвать эту команду cURL в своем приложении для iPhone.

curl --user "username:PASSWD" https://api.github.com/users/username

Как я могу выполнить его в объекте C? Я пробовал много методов, но не смог. Пожалуйста, помогите мне решить мою проблему.

0
nl ja de

2 ответы

Чтобы вызвать команду с использованием оболочки, используйте функцию system() :

system("curl --foo --bar");

Однако не делать этого. Это взломать. Используйте libcurl или API NSURL для работы в сети. Вы можете использовать libgit2 для проверки репозиториев git.

3
добавлено
Я знаю, что устарел, но мы можем сделать это правильно?
добавлено автор Anoop Vaidya, источник
Я попросил аппликацию.
добавлено автор Anoop Vaidya, источник
@ H2CO3: нельзя использовать NSTask для ios? Я из фонового фона, поэтому прошу ...
добавлено автор Anoop Vaidya, источник
@ H2CO3: хорошо спасибо :)
добавлено автор Anoop Vaidya, источник
Это не устарело, а просто ужасно. Вы действительно не хотите звонить в оболочку для сетевого вызова. Слушайте мудрые слова H2CO3!
добавлено автор lxt, источник
@AKV да, что?
добавлено автор user529758, источник
@AKV О, спасибо. Ну, я не вижу никаких особых причин для привлечения еще одного дополнительного уровня абстракции.
добавлено автор user529758, источник
@Rox Вы не знаете, как вызвать функцию или что?
добавлено автор user529758, источник
@Rox, прочитав его документацию .
добавлено автор user529758, источник
@AKV Конечно, вы можете, но опять же, я не вижу в этом каких-либо особых причин. Это немного надстройка.
добавлено автор user529758, источник
не могли бы вы объяснить это кратко? Я ничего не получил.
добавлено автор Rox, источник
Я не знаю о libcurl. Как это использовать?
добавлено автор Rox, источник
Документация @ H2CO3 очень запутанна. Можете ли вы помочь мне реализовать это в моем объективном коде c (iPhone app)? благодаря
добавлено автор Rox, источник

NSTask не будет работать в среде песочницы (вы получите «запретить процесс-вилку»). Поэтому добавьте свое приложение в приложение/Applications

Вы можете использовать NSTask для выполнения каких-либо системных команд.

NSTask *task=[NSTask new];
[task setLaunchPath:@"curl --user "username:PASSWD" https://api.github.com/users/username"];
[task launch];
0
добавлено
хорошо, я пробую это .....
добавлено автор Rox, источник
Для NSTask, какие рамки должны включать?
добавлено автор Rox, источник
Mobile Dev Jobs — вакансии и аналитика
Mobile Dev Jobs — вакансии и аналитика
6 187 участник(ов)

Публикуем вакансии и запросы на поиск работы по направлению iOS, Android, Xamarin и т.д. ВАЖНО: Правила публикации и правила канала: Ссылка – https://telegra.ph/Pravila-oformleniya-vakansij-i-rezyume-11-09-2

iOS Developers — русскоговорящее сообщество
iOS Developers — русскоговорящее сообщество
2 400 участник(ов)

Общаемся на темы, посвященным iOS-разработке, Swift, Objective-C, SDK, Rx, Cocoa и т.д.

Git — русскоговорящее сообщество
Git — русскоговорящее сообщество
588 участник(ов)

Обсуждаем git, его фичи, хаки, надстройки и экосистему. Правила: http://telegra.ph/ru-chat-rules-06-19 https://git.wtf/

pro.git::next
pro.git::next
44 участник(ов)

Обсуждение системы контроля версий git и инструментов для работы с ней.