第二十四回スパルタンプログラミング
何がしたいか?何が問題か?を意識して変なとこでぐだぐだ考えないこと! 30分悩んで分からなかったら、早めにヘルプを出す。
ピカイチで中華たべた。いっしーと先生が疲れていて、あまり飲まないし食べない。
やりたいこと
- RFC7230読む。
やったこと
楽しくない理由分析
- 全体像が見にくい。
- syntaxと章の結びつきがわからない。
- 7230, 7231, ...の関係が分からない。
ので、各ドキュメントのアブストラクトをまとめてみる。ざっとみると、
7230: "Message Syntax and Routing"
This document provides an overview of HTTP architecture and its associated terminology, defines the "http" and "https" Uniform Resource Identifier (URI) schemes, defines the HTTP/1.1 message syntax and parsing requirements, and describes related security concerns for implementations.
7231: "Semantics and Content"
This document defines the semantics of HTTP/1.1 messages, as expressed by request methods, request header fields, response status codes, and response header fields, along with the payload of messages (metadata and body content) and mechanisms for content negotiation.
7232: "Conditional Requests"
This document defines HTTP/1.1 conditional requests, including metadata header fields for indicating state changes, request header fields for making preconditions on such state, and rules for constructing the responses to a conditional request when one or more preconditions evaluate to false.
7233: "Range Requests"
This document defines range requests and the rules for constructing and combining responses to those requests.
7234: "Caching"
This document defines HTTP caches and the associated header fields that control cache behavior or indicate cacheable response messages.
7235: "Authentication"
This document defines the HTTP Authentication framework.
14.11.01
- RFC7230,7231の途中までlex実装
14.11.03-04
- RFC7231,...7235のlex実装
14.11.06
- debug開始
- ab{0,1}とab?は同じじゃないことが分かった。前者はa単体をキャッチできない、後者はできる。
(後々分かったが、flexは上記が同じ扱いになるから多分lexのバグだ。)