# 2021-01-16 第2回定例ミーティング ## アジェンダ・議事録 ### ペアレビューどこまで進んだ - ペアA:課題3まで - ペアB:課題3まで - ペアC:課題5まで ### ペアで上がった分からなかったこと・相談したいこと #### ペアA - 【田邊】X-Amzn-Trace-Idの正体 - (AWS公式の説明)Elastic Load Balancing で Application Load Balancer によってリクエストが処理されると、トレース情報が X-Amzn-Trace-Id ヘッダーに追加されます。 - Dockerの場合にはついていない。curlでもついているし、POSTMANでもついているので、犯人はhttpbinかな。 - **`Content-type: application/x-www-form-urlencoded`と`Content-type: application/json`** - 玄徳がまとめて書く - 【玄徳】try catchしてcatch (error)するときのerrorの型の付け方がわからない - [https://github.com/gn-t-k/PrAhaChallengeTasks/blob/823686e855111d8d5b95bddddef3bd6ab6255106/リクエストをパースするWEBサーバーを作ってみる/src/router.ts#L19](https://github.com/gn-t-k/PrAhaChallengeTasks/blob/823686e855111d8d5b95bddddef3bd6ab6255106/%E3%83%AA%E3%82%AF%E3%82%A8%E3%82%B9%E3%83%88%E3%82%92%E3%83%91%E3%83%BC%E3%82%B9%E3%81%99%E3%82%8BWEB%E3%82%B5%E3%83%BC%E3%83%90%E3%83%BC%E3%82%92%E4%BD%9C%E3%81%A3%E3%81%A6%E3%81%BF%E3%82%8B/src/router.ts#L19) - 自分でerror.messageの型を定義してみて、`unknown`型で受け取って…ていうやり方でやってみる - ストリームの話 - POSTで画像とかテキストとかjsonで送るためには、「バイナリで送る→それを解釈」するの手順が必要なので、バイナリを扱うための形としてストリーム? #### ペアB - `Content-Type: application/x-www-urlencoded`として、bodyにjson形式でデータを設定しても良いのか?課題のレスポンスを再現しようとすると、jsonで指定することになってしまう。 => 課題の書き間違いかどうかを確認する ``` { "data": "", // 先ほどはここにname:hogeが含まれていた "form": { "{\"name\": \"hoge\"}": "" // 今はここに含まれている }, "headers": { "Accept": "*/*", "Content-Length": "16", "Content-Type": "application/x-www-form-urlencoded", "Host": "httpbin.org", "User-Agent": "curl/7.54.0" }, "json": null, // 先ほどはここにname:hogeが含まれていた "url": "https://httpbin.org/post" } ``` - expressの`res.end()`は必ず書くべきか?`res.json()`で終わっても問題ないか? => `end()`は明示的に素早く空で応答したいときのみ使う => `end()`がなければ、サーバーが終了したことを認識できず、応答に時間がかかる? => APIの早期リターンなどに使う? => `end()`と`json()`を組み合わせて使うことは推奨されない? - HTMLのフォームで入力したデータを`application/json`で送信してもいいのか?基本は`application/x-www-urlencoded`を使うべきか?また、実際に使うケースはあるか? => jsonで再現できるなら別にjsonでも問題なさそう - bodyに日本語を設定する場合、文字化けを考慮して`application/x-www-urlencoded`を使うべきか?`application/json`でcharsetを指定すれば回避できるような気もするが、、。 => スキップ - クライアントからbodyに10GBのバイナリデータを設定して送信してきた場合、具体的にどういう流れでストリームから逐次読み込みを行うのか。ファイルからの読み込みのように、ストリームが開いた状態で、そこにクライアントからのデータが流れ込んでくるイメージか? => 質問してみる #### ペアC - みんなのexpressの実装が気になる(ベストプラクティスは?) - 古賀:https://github.com/dyekv/PrAha-Challenge/tree/main/3-express - 玄徳:https://github.com/gn-t-k/PrAhaChallengeTasks/pull/3 - 内容詳細:https://gntk.dev/post/20210106-introduction-to-express - 田邊:https://github.com/r-beta/PrAha/pull/4 - 粟田:https://github.com/AwataKyosuke?tab=repositories (課題3はPrivateリポジトリ内なので他のやつを見てもらえれば!PrAha_って頭についてるやつが課題関連です。) ### ToDo - チームMTG欠席する場合は事前に連絡しましょう。 - 田邊がCalendlyとスプレッドシートにメンターセッションの予約する - AirTableにあげる ###### tags: `Team-2`
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up