ElixirのHTTP ClientライブラリReqでベーシック認証を楽しんでみる
わびぬれば今はた同じなにはなるみをつくしてもあはむとぞ思ふ
ReqはヤングなHTTP Clientライブラリです。
この記事の内容はすでに古くなっているかもしれません。
https://hexdocs.pm/req/Req.html
をご確認ください。
Advent Calendar 2022 69日目1の記事です。
I'm looking forward to 12/25,2022
私のAdvent Calendar 2022 一覧。
はじめに
Elixirを楽しんでいますか
ElixirのHTTP ClientライブラリReqでベーシック認証の楽しみ方がわかりましたので書いておきます。
題材
Bitbucketからアクセストークンを取得するAPIをReqで使ってみます。
curl
サンプルとしてcurlを使用した例を示します。
$ curl -X POST -u "client_id:secret" \
https://bitbucket.org/site/oauth2/access_token \
-d grant_type=client_credentials
これをElixirで書いてみるわけです。
参考記事
client_id:secret
については上記の記事を参考にしてください。
プログラム
この記事のハイライトです。
ElixirのHTTP ClientライブラリReqでベーシック認証を楽しんでみます。
Mix.install([
{:req, "~> 0.2.1"}
])
client_id = "client id"
secret = "secret"
%{body: body, status: 200} =
Req.post!(
"https://bitbucket.org/site/oauth2/access_token",
{:form, [grant_type: "client_credentials"]},
auth: {client_id, secret}
)
access_token = Map.get(body, "access_token")
Req.post!/3の第3引数にauth: {client_id, secret}
というふうに指定をします。
どうでしょうか?
楽しんでいただけましたでしょうか!
公式ドキュメントの記述
公式ドキュメントは、こちらにベーシック認証に関して書かれています。
ぼーっとなんとな〜く眺めていてみつけました。
Wrapping up
この記事は、ElixirのHTTP ClientライブラリReqでベーシック認証の楽しみ方がわかりましたので書いておきました。
やコメントは、励みになりますし、私はちょっぴりハゲています。
Enjoy Elixir
$\huge{Enjoy\ Elixir🚀}$
以上です。
Author And Source
この問題について(ElixirのHTTP ClientライブラリReqでベーシック認証を楽しんでみる), 我々は、より多くの情報をここで見つけました https://qiita.com/torifukukaiou/items/b56320bc23324eee9280著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .