В последнем снапшоте DataparkSearch Engine (dpsearch-4.54-15042011.tar.bz2) и соответственно в текущей trunk-версии в SVN репозитории проекта у поискового демона searchd появился RESTful интерфейс, правда он пока принимает только одну команду GET.
Работа выходит очень простая: открываем TCP сокет по порту searchd (по умолчанию это 7003), отправляем
туда запрос в виде:
GET query_string
где вместо query_string нужно проставить обычную QUERY_STRING протокола CGI, как она получается при запросе search.cgi, а в ответ вы получите результаты в соответствии с выбранным шаблоном (search.htm по умолчанию, или указанным в CGI-параметре tmplt).
Замечание: также, как и для шаблонов, используемых с модулем для Apache mod_dpsearch, указывать команды DBAddr, а также команды, загружающие синонимы, акронимы, стопслова и т.п. не нужно. Если вы прописали эти данные в searchd.conf, они будут использованы при ответе на запросы, полученные через этот интерфейс.
PS: Похоже создавать поисковые API к DataparkSearch для различных языков программирования стало очень просто 🙂
Хмм. А зачем rest запрос возвращает готовый html?
Не в том ли суть вызова функции, чтобы получить голые данные (без форматирования) в формате JSON или XML.
Это стандартный шаблон в HTML, а возвращать поиск может любой удобный юзеру текстовый формат.
В примерах в дистрибутиве есть JSON шаблон:
http://code.google.com/p/dataparksearch/source/browse/trunk/doc/samples/json.htm
Уведомление: dpsearch-android