Re: cowboy http header

273 views
Skip to first unread message

Артём Семёнов

unread,
Mar 17, 2013, 1:35:23 PM3/17/13
to erlang-...@googlegroups.com
{ok, FwdIP, Req1} = cowboy_req:header("user-agent", Req),


{headers,[{<<"user-agent">>,<<"curl/7.26.0">>},
>                          {<<"host">>,<<"195.18.152.6:8010">>},
>                          {<<"accept">>,<<"*/*">>}]},

> "user-agent"
> <<"user-agent">>

binary ему нужно. https://github.com/extend/cowboy/blob/master/src/cowboy_req.erl#L384

17 марта 2013 г., 21:03 пользователь Вячеслав Козлов <kozl...@gmail.com> написал:
Здравствуйте!
cowboy.
Подскажите как я могу получить http header "user-agent", например.
Я делаю так:

handle(Req, State) ->

{ok, FwdIP, Req1} = cowboy_req:header("user-agent", Req),

................

но получаю ошибку при выполнении этой функции

=ERROR REPORT==== 17-Mar-2013::16:10:29 ===
** Cowboy handler geturl_view terminating in handle/2
   for the reason error:undef
** Handler state was undefined
** Request was [{socket,#Port<0.1725>},
                {transport,ranch_tcp},
                {connection,keepalive},
                {pid,<0.259.0>},
                {method,<<"GET">>},
                {version,{1,1}},
                {peer,{{95,110,25,64},56963}},
                {host,<<"195.18.152.6">>},
                {host_info,undefined},
                {port,8010},
                {path,<<"/vi">>},
                {path_info,undefined},
                {qs,<<"m=123">>},
                {qs_vals,undefined},
                {fragment,<<>>},
                {bindings,[]},
                {headers,[{<<"user-agent">>,<<"curl/7.26.0">>},
                          {<<"host">>,<<"195.18.152.6:8010">>},
                          {<<"accept">>,<<"*/*">>}]},
                {p_headers,[]},
                {cookies,undefined},
                {meta,[]},
                {body_state,waiting},
                {multipart,undefined},
                {buffer,<<>>},
                {resp_compress,false},
                {resp_state,waiting},
                {resp_headers,[]},
                {resp_body,<<>>},
                {onresponse,undefined}]
** Stacktrace: [{cowboy_http_req,header,
                    ['user-agent',
                     {http_req,#Port<0.1725>,ranch_tcp,keepalive,<0.259.0>,
                         <<"GET">>,
                         {1,1},
                         {{95,110,25,64},56963},
                         <<"195.18.152.6">>,undefined,8010,<<"/vi">>,undefined,
                         <<"m=123">>,undefined,<<>>,[],
                         [{<<"user-agent">>,<<"curl/7.26.0">>},
                          {<<"host">>,<<"195.18.152.6:8010">>},
                          {<<"accept">>,<<"*/*">>}],
                         [],undefined,[],waiting,undefined,<<>>,false,waiting,
                         [],<<>>,undefined}],
                    []},
                {geturl_view,handle,2,
                    [{file,"src/geturl_view.erl"},{line,19}]},
                {cowboy_handler,handler_handle,4,
                    [{file,"src/cowboy_handler.erl"},{line,119}]},
                {cowboy_protocol,execute,4,
                    [{file,"src/cowboy_protocol.erl"},{line,514}]}]

--
--
Страница рассылки: http://groups.google.com/group/erlang-russian
Новости: http://erlanger.ru
Чат: xmpp://erl...@conference.jabber.ru
Чат для оффтопа: xmpp://erlang...@conference.jabber.ru
Правила, действующие в чате и рассылке: http://erlanger.ru/ru/erlang-at-conference-jabber-ru

Написать письмо: erlang-...@googlegroups.com
Отписаться: erlang-russia...@googlegroups.com
---
Вы получили это сообщение, поскольку подписаны на группу Erlang по-русски.

Чтобы отказаться от подписки на эту группу и перестать получать из нее сообщения, отправьте электронное письмо на адрес erlang-russia...@googlegroups.com.
Подробнее о функциях можно узнать на странице https://groups.google.com/groups/opt_out.



Max Lapshin

unread,
Mar 18, 2013, 4:04:22 AM3/18/13
to erlang-...@googlegroups.com
Я один вижу в этом примере целую пачку проблем:
1) в сниппете кода указан лист
2) в стектрейсе атом
3) ошибка не function clause, а undef из чего я могу предположить, что например, не та версия ковбоя.

Reply all
Reply to author
Forward
0 new messages