Я не думаю, что httpc
модуль предоставляет средства для этого.
Тем не менее, это не сложно реализовать (если мы говорим о базовой аутентификации). В конце концов, это просто дополнительный заголовок запроса с парой 'user: password' в кодировке Base64.
Например, модуль Tsung ts_http_common делает это.
Например, вот как вы можете выполнить HTTP-запрос PUT с обычной аутентификацией:
auth_header(User, Pass) ->
Encoded = base64:encode_to_string(lists:append([User,":",Pass])),
{"Authorization","Basic " ++ Encoded}.
put_request(Url, User, Pass, Body) ->
ContentType = "text/json",
Headers = [auth_header(User, Pass), {"Content-Type",ContentType}],
Options = [{body_format,binary}],
httpc:request(put, {Url, Headers, ContentType, Body}, [], Options).