Может ли кто-нибудь дать мне понять, как разбирать HTTP-протокол с помощью scala 2.8 packrat-parsing?Анализ пакетов Pack HTTP
мне нужно разобрать прикрепленную образцовой HTTP Response в
- ResponseStatusCode: Int
- Заголовки: Список [(String, String)]
- Body: String, Array [Byte], CharBuffer или независимо от того,
Краткосрочное использование Packrat-Parser очень ценится. Благодаря!
HTTP/1.1·200·OK(CR)(LF)
Date:·Thu,·27·May·2010·12:18:48·GMT(CR)(LF)
Server:·Apache(CR)(LF)
Vary:·Accept-Encoding,User-Agent(CR)(LF)
Connection:·close(CR)(LF)
Transfer-Encoding:·chunked(CR)(LF)
Content-Type:·text/html;·charset=utf-8(CR)(LF)
(CR)(LF)
... Hello World ..
Я думаю, что с помощью парсера-комбинатора для этого используется кувалда, чтобы убить блоху. Ну, может быть, кувалдой, чтобы убить таракана. Обратите также внимание на то, что часть packrat состоит в том, чтобы сделать парсер более эффективным, когда он отступает. Оффлайн, я не вижу декодирования ответов HTTP, как требующих какого-либо возврата, так что аспект пакетности является спорным. –
ОК, но какое должно быть элегантное, но эффективное решение для анализа произвольных стандартных HTTP-ответов? – hotzen
Ваш интерес к опыту написания декодера для ответов HTTP? Или вы просто хотите их уничтожить? Если это последний, я бы просто использовал одну из готовых библиотек. Apache HttpComponents (http://hc.apache.org/) будет очевидным предложением. –