みずまずぷろぐらみんぐ日記

日々学んだことや頭に浮かんだことを、そこはかとなく書き連ねます

httpサーバーに慣れてきました

こんばんはー、みずまずです。

今日も今日とてN予備の教材を進めてます。

Node.jsでサーバーを立てるのに少しずつ慣れてきたところです(ほんとか?)。

今日はこの前作った投票サイトに簡単な認証をつけたりもしました。

endメソッド

今までは
res.end();
みたいに引数なしでしか書いたことなかったんですが、中に文字入れたり関数入れたりできるんだね。


res.end('あひゃひゃひゃ');



res.write('あひゃひゃひゃ');
res.end();


みたいに動く。

関数を指定した場合は、関数実行して終了らしい。
知らなかったです。
endは一連のレスポンスが終わる時に必ず書くもの(勝手にendしてくれるpipe関数使った場合を除く)だと思ってました。

basic認証

basic認証を簡単に取り入れてみました。
(暗号化されてないので、流石にそのままじゃ使えないが。)


http.createServer(basic, (req, res) => {なんか処理とか…


のように第一引数にbasic入れるのが今までとは違ったので、そんな説明Node.jsのリファレンスのhttpのところに書いてあったか?と少々戸惑いました。
(実際書いてありません。)
どうやらhttp-auth側がbasic認証使う時はこうして書いてね!と指定したものらしく、パッケージの説明サイトにはちゃんと書かれていました。

www.npmjs.com

パッケージってこうやって使っていくんだなぁ。

realm

あと、basic認証の中でいろんなサイトとか飛び回って調べてもよくわからなかったのがrealmです。

"同一の認証を適用するひとまとまりの領域につけた名前"みたいな感じなんですかね。

名前(文字列)自体は自由につけられるっぽいので、そこまで気にしなくても良いものなのかな?

"realmに設定した値がどこかで表示される"って意見も見たのですが、見つけられませんでした。
うーん、何なんだ………。

Cookie

単語自体は今までもちらほら目にしたことがあったのですが(いろんなサイト見てると時々「有効にしてくれ~」とか「使うぞ~」とか言われるよね)、まぁ何か自分の端末にデータ保存したり、そこから引き出したりしてるんだろううな…くらいにしか思っていませんでした。

有効期限があるのは知らなかったです。


簡単な仕組み?みたいなものを、手を動かしながら勉強していました。

ヘッダーに載せる感じなんですね。



…………何かしまりのない感じになってしまいましたが、今回はこのくらいですかね。

明日からの1週間は、この続きでCookieもっと使えるようになったり、いつも通りABCの過去問解いたり、新しくReact触ったりしていきたいと思っています。


あ、そうだ!

昨日は初めてAtCoderで企業主催?のコンテストに出ました。
あんな感じなんですね~。

A,B,C問題までACできたので、順調に力はついてきてるんじゃないかと思います。

嬉しいな。


それじゃあ皆さん、おやすみなさい(´-ε-`).o0