Пользовательский модуль httpd Erlang - как отправлять пользовательские HTTP-заголовки и Content-Type

Я реализую пользовательский модуль для сервера Erlang httpd (inets). Я могу успешно ответить с содержанием HTML с помощью следующей реализации do метод:

do(_ModData) ->
    Body = "<html><body>Hello world</body></html>",
    {proceed, [{response, {200, Body}}]}.

но проблема в том, что я не могу найти способ ответить с помощью пользовательских заголовков и text/xml Тип содержимого.

В соответствии с документами erlang httpd я могу ответить [{response,{response,Head,Body}}]где "Заголовок - это список значений ключей полей заголовка HTTP" (цитата из документа), но каким должен быть точный формат этого списка? Я попробовал следующее, но это дает 404:

do(_ModData) ->
    Body = "<html><body>Stats Placeholder</body></html>",
    Head = ["Content-Length", "40", "Content-Type", "text/html"],
    {proceed, [{response, {response, Head, Body}}]}.

Любая помощь в этом была бы оценена, документы и примеры для erlang httpd действительно редки...

3 ответа

Пытаться [{content_length, "40"}, {content_type, "text/html"}]

Попробуйте [{"Content-Length", "40"}, {"Content-Type", "text/html"}]

ЛОЛ. Находится в док.

[{code, 200}, {content_length, "40"}, {content_type, "text/html"}]
Другие вопросы по тегам