Какой самый простой способ получить веб-страницу в C? (через https) - PullRequest
1 голос
/ 06 мая 2009

Почти тот же вопрос, что и здесь: Какой самый простой способ получить веб-страницу в C?

однако условия изменились, и мне нужно подключиться через https, это немного сложнее, у кого-нибудь есть фрагменты?

Я работаю на платформе qnx, собирая и компилируя дополнительные библиотеки и внедряя их в наш продукт, очень и очень сложно, учитывая ограничения. Так что такие вещи, как libcurl, невозможны.

Результаты: Оказывается, мне все-таки пришлось установить libcurl на QNX. Это включало установку perl и openSSL для сборки libcurl, но как только это было сделано, это было хорошо. Это был наименее желательный вариант, но в итоге он того стоил.

Ответы [ 3 ]

7 голосов
/ 06 мая 2009

libcurl должен уметь обрабатывать все, что вам нужно.

1 голос
/ 06 мая 2009

Если вы не можете использовать библиотеку, то, я думаю, вы либо вынуждены обманывать, как в «вызове оболочки или другой среде, которая уже имеет такую ​​возможность». Я не очень хорошо знаком с QNX или средами, в которых он обычно работает, но в любом случае недостаточно для того, чтобы навязать эту возможность самостоятельно.

Кстати, прежде чем пропустить это: libcurl , как известно, основывается на QNX, так что попробуйте, прежде чем читать дальше.

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

По крайней мере, я бы порекомендовал внимательно посмотреть вокруг, чтобы убедиться, что любой из того, что вам нужно для этого, уже реализовано. Эта страница подразумевает, что OpenSSH доступен для платформы QNX, что обнадеживает.

0 голосов
/ 11 мая 2009

Я был в отъезде, когда вы отправили следующий вопрос.

Я разместил пример программы с поддержкой SSL на http://pastebin.com/f1cd08b33

Это необходимо связать с OpenSSL (-lssl), но вообще не нужно libcurl.

...