aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2013-11-14Update erlang.mkLoïc Hoguin
2013-11-09Properly send 201 on PUT requests when resource didn't existLoïc Hoguin
Regardless of whether a location header has been set, as explained in the HTTP RFC.
2013-11-09Remove an unnecessary clause in cowboy_req:body/2Loïc Hoguin
2013-11-09Use try/catch instead of catchLoïc Hoguin
Thanks Richard Carlsson for the remainder.
2013-11-08Merge branch 'dsucher-better-routes-without-start-slash-error'Loïc Hoguin
2013-11-08Clarify error msg for route lacking starting slashDanielle Sucher
2013-11-08Merge branch 'adrianroe-streaming-http1.1-compat'Loïc Hoguin
2013-11-08Add a workaround to disable chunked transfer-encodingAdrian Roe
This is an undocumented workaround to disable chunks when using HTTP/1.1. It can be used when the client advertises itself as HTTP/1.1 despite not understanding the chunked transfer-encoding. Usage can be found looking at the test for it. When activated, Cowboy will still advertise itself as HTTP/1.1, but will send the body the same way it would if it was HTTP/1.0.
2013-11-08Add link to the repository of elixir Cowboy examplesLoïc Hoguin
2013-11-08Optimize query string parsingLoïc Hoguin
* Parsing code was moved to cowlib: cowboy_qs:parse_qs/1 * A function was added to build query strings: cowboy_qs:qs/1 * Also added cowboy_qs:urlencode/1 and cowboy_qsurldecode/1
2013-11-02Review, improve and document the static files handlerLoïc Hoguin
Changes include: * Much simplified route configuration. * Etag generation is now enabled by default. * Web mimetypes are now detected by default. A bigger list of mimetypes can be detected without any additional library. * Mimetypes can no longer be specified as a list. Copying this list for new connections is too costy. You can easily convert it into a function and pass that function to the handler instead. * You can however specify a single hardcoded mimetype. Mostly useful when serving a single file, like an index.html file, to avoid extra operations. * Specifying a path as a list of tokens is not possible anymore. Use either a binary or a string. * Using a private directory will not work if the application was not started properly. Cowboy will not attempt to find the location of this directory if the VM doesn't know it, as this caused issues in some setups. * Overall the code has been much simplified and clarified, and of course has now been documented.
2013-10-23Move cookie parsing/building code to cowlibLoïc Hoguin
The code for parsing has also been rewritten to be more efficient and to be able to handle cookie values with space inside them properly. Update cowlib to 0.2.0.
2013-10-22Remove the elixir_hello_world exampleLoïc Hoguin
Elixir examples will be in a separate repository maintained by Elixir capable developers.
2013-10-22Add relx to the ignore listLoïc Hoguin
2013-10-22No need for relx in path for examples anymoreLoïc Hoguin
2013-10-22Convert the markdown_middleware example to a releaseLoïc Hoguin
2013-10-14erlang.mk now has built-in support for relxLoïc Hoguin
2013-09-23Greatly expand on the Req objectLoïc Hoguin
Cut in four different chapters: request, request body, response and cookies.
2013-09-18Remove unnecessary titlesLoïc Hoguin
2013-09-18Greatly improve the HTTP handlers chapterLoïc Hoguin
2013-09-18Small roadmap updateLoïc Hoguin
2013-09-18Added a chapter about life of HTTP requestsLoïc Hoguin
Reworked the table of contents also.
2013-09-10Fix SPDY push explanationsLoïc Hoguin
2013-09-09Fix the list of registered processes in the examplesLoïc Hoguin
2013-09-09Fix value for header content-encoding in a testLoïc Hoguin
Not that it matters for the test, but still.
2013-09-09Add files generated by examples to the .gitignoreLoïc Hoguin
2013-09-09Convert the websocket example to a releaseLoïc Hoguin
2013-09-09Convert the web_server example to a releaseLoïc Hoguin
Temporary mimetypes list here too.
2013-09-09Fix command to start the static_world releaseLoïc Hoguin
2013-09-09Convert the static handler example to a releaseLoïc Hoguin
Temporarily hardcode the list of mimetypes.
2013-09-08Convert the SSL hello world example to a releaseLoïc Hoguin
2013-09-08Fix the command to start the release in rest_basic_auth exampleLoïc Hoguin
2013-09-08Convert the REST streaming example to a releaseLoïc Hoguin
2013-09-08Convert the REST pastebin example to a releaseLoïc Hoguin
2013-09-08Add missing files to the REST basic auth exampleLoïc Hoguin
2013-09-08Convert the REST hello world example to a releaseLoïc Hoguin
2013-09-08Convert the EventSource example to a releaseLoïc Hoguin
2013-09-08Conver the error hook example to a releaseLoïc Hoguin
2013-09-08Convert the POST echo example to a releaseLoïc Hoguin
2013-09-07Convert the GET echo example to a releaseLoïc Hoguin
2013-09-07Convert the cookie example to a releaseLoïc Hoguin
2013-09-07Convert the compressed response example to a releaseLoïc Hoguin
2013-09-07Convert the chunked hello world example to a releaseLoïc Hoguin
2013-09-07Rename the basic_auth example to rest_basic_authLoïc Hoguin
2013-09-07Convert the basic auth example to a releaseLoïc Hoguin
2013-09-07Convert the hello world example to a releaseLoïc Hoguin
2013-09-07Fix wrong header sent in echo_post exampleLoïc Hoguin
2013-09-07Implement recv timeout for SPDYLoïc Hoguin
2013-09-07Much improved Getting started chapterLoïc Hoguin
We now describe how to build a hello world application from start to finish, including setting up erlang.mk for building, and using relx for generating the release. All concepts are not explained in details of course, but we don't need to at this point, we just want things to be working.
2013-09-04Make cowlib a proper dependencyLoïc Hoguin
Start moving a few functions from Cowboy into cowlib.