名もなき未知

エンジニアリングとか、日常とかそういうのをまとめる場所。

HTTP::Tinyの通信がうまくいかなかったのでメモ

perl入学式の資料を一人で黙々と読んでいるのだが、うまくいかなかったのでメモ。

具体的にはこの辺の話。

https://github.com/perl-entrance-org/workshop-basic-online/blob/master/3rd/slide.md#web-api-%E3%82%92%E4%BD%BF%E3%81%86get-9

起きていたこと

デコードに失敗していた。具体的に調べていくとhttps通信に問題がありそうなことがわかる。

調べていくと、下記の記事を見つけた。

squareperl.com

これに従って、 ssl が有効かどうかを調べる。

my ($can_ssl, $why) = HTTP::Tiny::can_ssl();
print "$can_ssl" . "\n";
print "$why" . "\n";

するとこのような結果になった。

0
IO::Socket::SSL 1.42 must be installed for https support
Net::SSLeay 1.49 must be installed for https support

つまり SSL 通信が有効ではない。

解決方針

perldocの元をたどって英語版の記事を読む。

metacpan.org

Direct https connections are supported only if IO::Socket::SSL 1.56 or greater and Net::SSLeay 1.49 or greater are installed. An error will occur if new enough versions of these modules are not installed or if the SSL encryption fails. You can also use HTTP::Tiny::can_ssl() utility function that returns boolean to see if the required modules are installed.

とあるので、ライブラリをアップデートすればよさそうだ。

解決する

squareperl.com

この記事を再度参考に、 cpanm IO::Socket::SSL したところライブラリがアップデートされ、正しく動くようになった。

起きていたことのコード片の実行結果も下記のようになり、有効になったことがわかる。

1

まとめ

情報にありつくのが意外と難しかったです。 でもデフォルトで https クライアントや json が扱いやすい形なのは perl のいいところかもしれませんね。

それにしても入学式のドキュメントはよくできていると感じます。今まで触ってこなかった言語ですが、シジルの仕組みは面白いですね。 リファレンスは難しかったり、サブルーチンは引数の取り出しがそんな方法で…! みたいなところ思うところありますが、ベターshellというか活用できそうな亜場所はまだまだありそうな言語だなーと感じていて、話題に上がることは少なくなったけど魅力もある言語だなと思ってます。

早いところ入学式を終わらせたい(一応、書いたものを非公開リポジトリに上げてコード管理だけはしてる)。

2022年3月のアウトプットと参加イベントふりかえり(Laprasで出したもの)

2022年3月のアウトプットと参加イベントを振り返ると

アウトプットしたものや参加したイベントなどをまとめてみました。

connpass

Blog等

LAPRASポートフォリオはこちらから

2022年3月分の読書

3月の読書分です。

3月の読書メーター
読んだ本の数:4
読んだページ数:1396
ナイス数:6

絶対にミスをしない人の脳の習慣絶対にミスをしない人の脳の習慣感想
Audibleで聞いた。結論回復に効くのはやっぱり睡眠と適度な運動。あとメモの大切さとか、アナログに残すことの大事さとか。失敗し始めると既に脳が疲労状態にあり、そのまま行くとさらに失敗が重なって辛いので、早め早めに休んで睡眠をしっかりと摂る、を意識したい。
読了日:03月21日 著者:樺沢 紫苑
大規模スクラム Large-Scale Scrum(LeSS) アジャイルとスクラムを大規模に実装する方法大規模スクラム Large-Scale Scrum(LeSS) アジャイルとスクラムを大規模に実装する方法感想
LeSSはスクラムをいい感じに拡張していて、本書を読んでなんとなく俯瞰できた。チーム分割がフィーチャーチームで、コンポーネントにならないように分割するのが肝なのかなあと開発者視点では感じる。またスクラムマスターが元マネージャーだとチームが自主性をもって決定しないとか、その辺も考えさせられた。ガイドを改めて読み直して、理解を深めたい。
読了日:03月21日 著者:
失敗から学ぶRDBの正しい歩き方 Software Design plus失敗から学ぶRDBの正しい歩き方 Software Design plus感想
使うRDBで違うみたいな機能をあまり意識できてないので、自分が使いそうなものはちゃんと押さえたいなと思いました。あとCHECK制約やLATERAL句はあんまり知らなかったので勉強になりました。SQLアンチパターンの引用もいくつかあったので、そっちもチェックしてみようかな。
読了日:03月13日 著者:曽根 壮大
実力も運のうち 能力主義は正義か?実力も運のうち 能力主義は正義か?感想
Audibleで聞いていたが、成功したことが本人の努力というより運やチャンスをつかめたから、みたいな部分を見落としがちになっている世界観が見えてきた気がする。そしてその運やチャンスは平等性を欠いているなあという感じ。いい教育機関に行かなければとか、入試システムとかその周りの話は割と聞いていて興味深い。また暗黙的になっているいろいろな問題に気が付いたような気もする。学歴偏重主義になっている、これは身近でもそういう部分はあるかもなぁ。
読了日:03月06日 著者:マイケル サンデル

読書メーター