Вопрос

Мне нужно встроить крошечный веб-сервер в скомпилированную внешнюю библиотеку jsfl для Adobe Flash CS4, чтобы внешний процесс мог взаимодействовать с ним.Внешней библиотекой будет пакет Carbon на Mac и набор DLL-файлов на Windows, поэтому веб-сервер необходимо будет встроить / загрузить из кода C / C ++ без внешних зависимостей, таких как Ruby.Большинство крошечных веб-серверов, таких как fnord или mini-httpd, никогда не были портированы на Mac или Windows, но в основном предназначены для компиляции в Linux.Я подумывал об использовании встроенного веб-сервера на основе Lua, но не уверен, сработает это или нет.Существуют ли какие-либо встроенные веб-серверы, которые проще, чем другие, портировать на Windows и Mac?

Это было полезно?

Решение

Хорошо, я наконец-то ответил на этот вопрос.Оценив несколько веб-серверов, я нашел драгоценный камень, Мангуст.Mongoose - это очень маленький встраиваемый веб-сервер, написанный на C, который легко компилируется и запускается на Linux, Mac и Windows (в wiki есть даже ссылка на то, как запустить его на iPhone).Многие веб-серверы говорят, что они делают это, но Mongoose было действительно легко запустить.Он просто сделал именно то, что я ожидал от небольшого веб-сервера, с минимальными затратами.Мой предыдущий подход, использовать libevent или libev, показался мне слишком сложным, в основном из-за проблем с потоками, с которыми я столкнулся в моем основном потоке GUI.Mongoose поставляется с поддержкой CGI и PHP, но на самом деле я обнаружил, что обработчики на основе C очень просты в написании, поэтому я остановился на этом.

Другие советы

Вебрик и Монгрел бегают на обоих.

Я подумал об одной другой идее, которая проще, чем Lua, которую я попробую:использование веб-сервера, построенного с помощью libevent.Все, что мне действительно нужно сделать, это отправить один файл, и мне не нужны никакие другие функции HTTP, поэтому может сработать что-то вроде следующего:

http://3.rdrail.net/blog/libevent-webserver-in-40-lines-of-c/

Я обязательно доложу об этом.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top