aboutsummaryrefslogtreecommitdiffstats
path: root/lib/inets/src/http_client/httpc.erl
AgeCommit message (Collapse)Author
2016-04-13Merge branch 'henrik/update-copyrightyear'Henrik Nord
* henrik/update-copyrightyear: update copyright-year
2016-03-16inets: Mend ipv6_host_with_brackets optionIngela Anderton Andin
This is a quick fix to make this option work. We will revisit this and clean up httpc option handling later. Also adding regression tests.
2016-03-15update copyright-yearHenrik Nord
2015-12-08inets: Add PATCH method to client and serverPablo Lamela
2015-06-18Change license text to APLv2Bruce Yinhe
2013-09-24inets: httpc - Remove dead error handling codeIngela Anderton Andin
Some error handling is only relevant for functions that end up in gen_server:call and not in gen_server:cast.
2013-09-13inets: httpc make httpc_cancel_request/[1,2] asynchronousIngela Anderton Andin
2013-07-01Merge branch 'jwh/httpc_delete_body/OTP-11190' into maintFredrik Gustafsson
* jwh/httpc_delete_body/OTP-11190: httpc: Allow content body in DELETE requests
2013-06-14httpc: Allow content body in DELETE requestsJames Wheare
2013-06-12Update copyright yearsBjörn-Egil Dahlberg
2013-03-12Added guard for invalid field and values in headersFredrik Gustafsson
2012-10-02inets httpc: TLS via proxyIngela Anderton Andin
Introduces new option htts_proxy so that it is possible to have different proxies for http and https. The new option defaults to the old proxy option. Implements HTTP-1.1 extension method CONNECT to establish SSL/TLS tunnel We choose not to implement "TLS upgrade" as defined by RFC 2817 as this method of upgrade is vulnerable to man in the middle attacks, can be easily broken by proxies and does not seem to be widely adopted.
2012-05-22[inets/httpc] Better handling of session db update failureMicael Karlberg
A failure to update the session database will now result in an informative error message and a controlled (handler) exit rather then an ugly crash. Also debug functions to retrieve sessions info and updated the info function with more info (sessions and options). OTP-10093
2012-03-30Update copyright yearsBjörn-Egil Dahlberg
2012-03-15[inets] The module http_uri now officially supportedMicael Karlberg
The module http_uri now officially supported. Also, the http_uri:parse/1,2 function has been extended with more scheme support and a way to provide your own scheme info. OTP-9983
2012-03-14[inets] A more general version of http_uri:parseMicael Karlberg
OTP-9983
2012-03-13[inets/httpc] Add function to retreive current optionsMicael Karlberg
Add function to retreive current options, httpc:get_options/1,2. OTP-9979
2011-11-23Fixed acceptor exit warnings (detected by dialyzer).Micael Karlberg
Also fixed cookie_header/3 and updated documented accordingly. Also added documentation for undocumented URI parse option.
2011-10-18[httpc] Wrong Host header in IPv6 HTTP requests.Micael Karlberg
When a URI with a IPv6 host is parsed, the brackets that encapsulates the nnn is removed. This value is then supplied as the host header. This can cause problems with some servers. A workaround for this is to use headers_as_is and provide the host header with the requst call To solve this a new option has been added, ipv6_host_with_brackets. This option specifies if the host value of the host header shall include the branckets or not. By default, it does not (as before). OTP-9628
2011-10-12Make return from the parse function conform with:Micael Karlberg
{error, Reason} | {ok, ParsedURL}
2011-09-05Removed the ossl config option (from both client and server).Micael Karlberg
The ossl option is no longer valid since the old ssl (OpenSSL based ssl variant) has been removed from the ssl app. OTP-9522
2011-06-15[httpc|httpd] Added support for IPv6 with ssl.Micael Karlberg
OTP-5566 Merge branch 'bmk/inets/handle_ipv6_with_ssl2/OTP-5566' into bmk/inets/inets57_integration2 Conflicts: lib/inets/doc/src/notes.xml lib/inets/src/inets_app/inets.appup.src lib/inets/test/inets_test_lib.erl
2011-06-15Stopping httpc client...Micael Karlberg
2011-06-15Clients started stand-alone not properly handled.Micael Karlberg
OTP-9365
2011-06-15Temporary solution for profile_name stuff. What about Pids???Micael Karlberg
2011-06-15[httpc] Remove unnecessary usage of iolist_to_binary whenMicael Karlberg
processing body (for PUT and POST). Filipe David Manana OTP-9317
2011-05-20Update copyright yearsBjörn-Egil Dahlberg
2011-03-18Fixed debug macro.Micael Karlberg
Fixed appup file (not updated). Fixed application version.
2011-03-07Adding missing "send loop" for raw sending.Micael Karlberg
Also fixed some of the documentation (types).
2011-03-04Merge branch 'fm/httpc-upload-body-streaming' into ↵Micael Karlberg
bmk/inets/httpc/support_upload_body_streaming/OTP-OTP-9094 Conflicts: lib/inets/src/http_client/httpc.erl lib/inets/test/httpc_SUITE.erl
2011-03-02inets/httpc: Polish documentationChristian von Roques
* Assure store_cookies (and verify_cookies) is documented instead of the nonexistent store_cookie and verify_cookie. * Make sure the cookies option is not called cookie in comments. * Sprinkle <c>...</c> arround symbols and code snippets in text. * Grammar, wording, and punctuation fixes. * Formalize See gen_tcp:connect/3,4 using <seealso>.
2010-11-29URL-encoding - add support in client and more usage in server. AlsoIngela Anderton Andin
added missing include directory.
2010-10-13httpc: add option to do automatic chunked transfer-encodingFilipe David Manana
This is specially useful when a client doesn't know in advance the length of the payload (so that it can't set the Content-Length header). Example: -module(httpc_post_stream_test). -compile(export_all). prepare_data() -> crypto:start(), {ok, Fd} = file:open("test_data.dat", [binary, write]), ok = file:write(Fd, lists:duplicate(crypto:rand_uniform(8182, 32768), "1")), ok = file:close(Fd). test() -> inets:start(), ok = prepare_data(), {ok, Fd1} = file:open("test_data.dat", [binary, read]), BodyFun = fun(Fd) -> case file:read(Fd, 512) of eof -> eof; {ok, Data} -> {ok, Data, Fd} end end, %% header 'Transfer-Encoding: chunked' is added by httpc {ok, {{_,200,_}, _, _}} = httpc:request(post, {"http://localhost:8888", [], "text/plain", {chunkify, BodyFun, Fd1}}, [], []), ok = file:close(Fd1).
2010-10-05httpc: allow streaming of PUT and POST request bodiesFilipe David Manana
This is a must when uploading large bodies that are to large to store in a string or binary. Besides a string or binary, a body can now be a function and an accumulator. Example: -module(httpc_post_stream_test). -compile(export_all). -define(LEN, 1024 * 1024). prepare_data() -> {ok, Fd} = file:open("test_data.dat", [binary, write]), ok = file:write(Fd, lists:duplicate(?LEN, "1")), ok = file:close(Fd). test() -> inets:start(), ok = prepare_data(), {ok, Fd1} = file:open("test_data.dat", [binary, read]), BodyFun = fun(Fd) -> case file:read(Fd, 512) of eof -> eof; {ok, Data} -> {ok, Data, Fd} end end, {ok, {{_,200,_}, _, _}} = httpc:request(post, {"http://localhost:8888", [{"content-length", integer_to_list(?LEN)}], "text/plain", {BodyFun, Fd1}}, [], []), ok = file:close(Fd1).
2010-06-07OTP-7907: Allow the use of the "new" ssl (essl).Micael Karlberg
OTP-8564: Update deeprication status. OTP-8573: Inets mod_alias URL rewrite.
2010-04-28OTP-8542: HTTP client memory leakMicael Karlberg
OTP-8607: https default port not handled
2010-01-19OTP-8016, OTP-8056, OTP-8103, OTP-8106, OTP-8312, OTP-8315, OTP-8327,Micael Karlberg
OTP-8349, OTP-8351, OTP-8352, OTP-8359 & OTP-8371.
2010-01-13OTP-8016, OTP-8056, OTP-8103, OTP-8106, OTP-8312, OTP-8315, OTP-8327, OTP-8349,Micael Karlberg
OTP-8351, OTP-8359 & OTP-8371.