aboutsummaryrefslogtreecommitdiffstats
path: root/examples/upload/src/upload_handler.erl
blob: 0895d784af542310399d3d5cd9c5cbc02be6aa35 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
-module(upload_handler).
-behaviour(cowboy_http_handler).

-export([init/3]).
-export([handle/2]).
-export([terminate/3]).

init(_, Req, _Opts) ->
	{ok, Req, undefined}.

handle(Req, State) ->
	{ok, Headers, Req2} = cowboy_req:part(Req),
	{ok, Data, Req3} = cowboy_req:part_body(Req2),
	{file, <<"inputfile">>, Filename, ContentType, _TE}
		= cow_multipart:form_data(Headers),
	io:format("Received file ~p of content-type ~p as follow:~n~p~n~n",
		[Filename, ContentType, Data]),
	{ok, Req3, State}.

terminate(_Reason, _Req, _State) ->
	ok.