Cookie ã®äœ¿çšã«ã€ããŠ.æ¬ãµã€ãã§ã¯ãåºæ¬æ©èœã®æäŸã«å¿ èŠãªå¿ é Cookie ã䜿çšããŠããŸããããã«ãåæããã ããå Žåã«éããã¢ã¯ã»ã¹è§£æ Cookie ãå©çšããŠå©çšç¶æ³ãææ¡ãããµãŒãã¹æ¹åã«åœ¹ç«ãŠãŸãã詳ãã㯠.
ãã®ããŒã«ã¯äœ¿ããããã£ãã§ããïŒ
ãã£ãŒãããã¯ã¯æ¹åã«åœ¹ç«ã¡ãŸã
å°JSONæ°æ®èªåšèœ¬æ¢äžºFlow类代ç ïŒç®åæ°æ®æš¡ååŒåïŒæ¯æèªå®ä¹åœå飿 Œã
æŠèŠ
解決ã§ãã課é¡ãåŠçã®ä»çµã¿ãããŒã¿ã®ç¯å²ã確èªã§ããŸãã
ãã®ããŒãžã§ã¯ãJSONããã¹ããèªã¿åãããµã³ãã«ã«å«ãŸããããŒã¿æ§é ãFlowã®åã³ãŒããšããŠåºåããŸããFlowã¯JavaScriptåãã®éçåãã§ãã«ãŒã§ããªããžã§ã¯ãåã¯ãªããžã§ã¯ããæã€ããããã£ãšå€ã®åãèšè¿°ããŸããå ¥åæ¬ã«JSONã貌ãä»ãããšãæååã»æ°å€ã»çåœå€ãé åãå ¥ãåã®ãªããžã§ã¯ããªã©ãããšã«å®£èšã®èæ¡ã衚瀺ãããŸãã
ããšãã° {"profile":{"name":"Aoi"},"active":true} ãªããprofile ã®å
åŽã«æååã® name ããããactive ã¯çåœå€ã§ããããšãåã«è¡šããŸããFlowã§ã¯æ°å€ã¯ numberãæåå㯠stringãçåœå€ã¯ boolean ãšããŠæ±ãããŸãããªããžã§ã¯ãã®åã¯ããããã£ã®åœ¢ã衚ããã®ã§ãå€ãã®ãã®ãFlowã³ãŒããžå€æããããã¢ããªã®åŠçãå®è£
ããããããã®ã§ã¯ãããŸããã
åºåã®ååã¯ãã©ãŒã ã§å
¥åã§ããåæå€ã¯ Root ã§ããFlowã®å¯Ÿè±¡ããŒãžã§ã¯åå®çŸ©ã®ã¿ãåºåããèšå®ãæå¹ã«ãªã£ãŠããŸããçµæã¯ã³ããŒãŸãã¯ãã¡ã€ã«ãšããŠããŠã³ããŒãã§ããŸãã
åçæã®åºçºç¹ã¯ã貌ãä»ããJSONã«çŸããŠããå€ã§ããããšãã°æååã®IDã¯ãå€ãæ°åã ãã«èŠããŠãJSONäžã§åŒçšç¬Šã«å²ãŸããŠããã°æååã§ããæ°å€ãšããŠæžãããæŽæ°ãšå°æ°ã¯ãFlowã§ã¯ã©ã¡ãã number ã§ããé
åã¯èŠçŽ ã®äŸããé
ååãäœããããªããžã§ã¯ãå
ã®ãªããžã§ã¯ãã¯å
¥ãåã®ããŒã¿åœ¢ç¶ãšããŠè¡šçŸãããŸãã
ããã§ããæšå®ã¯ãæå ã®äŸãã圢ãèµ·ããäœæ¥ã§ãã1ä»¶ã®JSONã ãã§ã¯ãå¥ã®å¿çã§å€ãå€ãããããã£ãŒã«ããçç¥ãããããé åã«ç°ãªãçš®é¡ã®å€ãæ··ããããŸã§ã¯ç¢ºå®ã§ããŸãããAPIã®å®å šãªä»æ§ãJSON Schemaãçæããæ©èœãšããŠã§ã¯ãªããå宣èšã®ãããå°ãšããŠäœ¿ããŸãã
Array<T> ãšç©ºé
åã®æ±ãã説æãç¢ºèªæ¥ïŒ2026幎10æ1æ¥ãäœ¿ãæ¹
æé ã«æ²¿ã£ãŠæäœããäŸã䜿ã£ãŠå ¥åãšçµæã確èªããŸãã
JSONã®ãªããžã§ã¯ãäŸãå ¥åæ¬ã«è²Œãä»ããŸããã³ã¡ã³ããæ«å°Ÿã®äœåãªã«ã³ãããã°æååãªã©JSONæ§æã«å«ãŸããªããã®ã¯åãé€ããŸããããã©ãŒããããã§ã€ã³ãã³ããæŽããããããµã³ãã«ãã§äŸãèªã¿èŸŒãã ãã§ããŸãã
åºåã®æ ¹ã«ãªãååãå
¥åããŸããæ¢å®å㯠Root ã§ããå®éã®ã³ãŒãã§äœ¿ãååã«åããããšãã³ããŒåŸã®çœ®ãæããæžãããŸãã
JSONãç·šéãããšFlowã®åºåãæŽæ°ãããŸããæ§æãšã©ãŒãããå Žåã¯ãšã©ãŒè¡šç€ºã確èªããŠå ¥åãçŽããŸããçæçµæãã³ããŒããããååã«å¿ããæ¡åŒµåã®ãã¡ã€ã«ãšããŠããŠã³ããŒãããŠãã ããã
äŸãšããŠã{"user":{"name":"Aoi"},"enabled":true} ãå
¥åãããšãã«ãŒãã®ãªããžã§ã¯ããuser å
ã®æååãã£ãŒã«ããçåœå€ãã£ãŒã«ãã®é¢ä¿ãå宣èšã«çŸããŸããå
¥åãå¥ã®å¿çäŸã«å·®ãæ¿ããŠãæ§é ã®éããæ¯ã¹ãããšãã§ããŸãã
掻çšäŸ
ä»äºãæ¥åžžã®æµãã®äžã§ã®æŽ»ç𿹿³ã玹ä»ããŸãã
Flowã䜿ãéçºè ãã¬ã¹ãã³ã¹äŸãåãåã£ããšãã代衚çãªJSONãå ¥åããŠããããã£ãšå€ã®åãèŠæž¡ãèæ¡ãäœããŸããè€æ°ã®ã¬ã¹ãã³ã¹åœ¢ãããå Žåã¯ããããã確èªããŠåãè£ããŸãã
ãã¹ããã£ã¯ã¹ãã£ã®ããŒãå ¥ãåãå宣èšãšããŠå¯èŠåããã³ãŒãåŽã§åç §ãããã£ãŒã«ãã確èªã§ããŸãããã¹ãçµæãæ¥åäžã®æ£ããã¯ãå¥éã¢ãµãŒã·ã§ã³ã§æ€èšŒããŸãã
å°ããªJSONäŸãå ¥åããããªããã£ããé åãå ¥ãåã®ãªããžã§ã¯ããã©ã®ãããªå®£èšã«ãªããã芳å¯ã§ããŸãããã®åŸãFlowã®ããã¥ã¡ã³ããåç §ããŠä»»æãã£ãŒã«ããnullã®è¡šçŸã調æŽããŸãã
Q&A
ããããçåãè¿·ããããç¹ããŸãšããŠç¢ºèªã§ããŸãã
åäžã®ãµã³ãã«ã«çŸããªããã£ãŒã«ãã¯ããã®äŸã ãããã¯å€æã§ããŸãããè€æ°ã®å¿çäŸãAPI仿§ãèŠãŠãååšããªãå Žåããããšç¢ºèªã§ãããã£ãŒã«ãã¯ãFlowã®ä»»æããããã£ãšããŠæåã§èª¿æŽããŠãã ããã
åãã§ã¯ãããŸãããJSONã® null ã¯æç€ºãããå€ã§ããäžæ¹ãFlowã®ä»»æããããã£ã¯å€ãçç¥ãããå Žåãªã©ã衚ããŸããFlowã§ã¯ null ãš void ã¯å¥ã®åãªã®ã§ãå®éã®å¿çã«åãããŠåã確èªããŠãã ããã
ãã®ããŒãžã®åºåå ã¯Flowã§ããFlowãšTypeScriptã¯å¥ã®åã·ã¹ãã ã§ãæ§æãåã®èŠåãç°ãªããããTypeScriptçšã³ãŒããšããŠãã®ãŸãŸäœ¿ãããšã¯éããŸãããTypeScriptãããžã§ã¯ãã§ã¯å¯Ÿè±¡èšèªçšã®å宣èšãçšæãããã®ãããžã§ã¯ãã®åãã§ãã«ãŒã§ç¢ºèªããŸãã
空é åã«ã¯èŠçŽ åã倿ããå€ããããŸããããŸãããµã³ãã«ãšå®ããŒã¿ã§é åèŠçŽ ãç°ãªãå Žåããæšå®çµæã ãã§ã¯æå³ããåã衚ããªãããšããããŸãã远å ã®ä»£è¡šäŸãAPI仿§ãšç §åããå¿ èŠãªåãæã§è£ã£ãŠãã ããã
泚æ
å©çšç¯å²ãçµæã®å¶éãå¿ èŠãªæ³šæç¹ãäºåã«ç¢ºèªããŸãã
åã³ãŒãã¯å ¥åããJSONãµã³ãã«ã«åºã¥ãèæ¡ã§ããå宣èšã ãã§å®è¡æããŒã¿ãæ€æ»ããããã§ã¯ãªããAPIã®å šã±ãŒã¹ãå¿ é æ§ãåæå€ããšã©ãŒå¿çãä¿èšŒããŸãããæ°å€ã«èŠããæååãnullãä»»æãã£ãŒã«ãã空ãŸãã¯æ··åšããé åãç¹æ®ãªããããã£åãéç¹çã«ç¢ºèªããŠãã ãããå¿ èŠã«å¿ããŠè€æ°ã®å®äŸãæ£åŒãªAPI仿§ã䜿ããçæåŸã¯å¯Ÿè±¡ãããžã§ã¯ãã§Flowã®ããŒãžã§ã³ãšèšå®ã«åãããŠåãã§ãã¯ãå®è¡ããŠãã ããã
é¢é£
é¢é£ããŒã«ãç¹éãå©çšå¯èœãªAPIãæ¢ããŸãã