开发者

How to use httpc to make POST/GET/HEAD?

开发者 https://www.devze.com 2023-03-09 17:30 出处:网络
I have a couple of functions that perform HTTP POST/GET/HEAD requests. For the POST request I use this:

I have a couple of functions that perform HTTP POST/GET/HEAD requests.

For the POST request I use this:

http:request(post, {Url, [], ContentType, Body}, [], []).

While for the HEAD/GET I use:

http:request(Method, {Url, []}, [], [])

How can I write this two calls in a unique one? POST request h开发者_开发问答as those two additional variables with respect to GET/HEAD request. I tried with empty lists but I got:

  ** exception error: no function clause matching

Thank you very much.


To use the call to httpc only once, you need to extract the Request tuple from the call because that's what's unique between the methods as you use them:

post(URL, ContentType, Body) -> request(post, {URL, [], ContentType, Body}).
get(URL)                     -> request(get,  {URL, []}).
head(URL)                    -> request(head, {URL, []}).

request(Method, Request) ->
    httpc:request(Method, Request, [], []).


Body = "name=<<name>>&pass=<<pass>>",
httpc:request(post, {Url, [], "application/x-www-form-urlencoded", Body}, [], []).
0

精彩评论

暂无评论...
验证码 换一张
取 消