èè ã«çºèšæš©ãäžããŸãã
.NET Coreã®çºè¡šä»¥æ¥ãç§ã¯ãã®æè¡ã泚ææ·±ãç£èŠãå§ããŸããã æåã®ããŒãžã§ã³ããªãªãŒã¹ããããšããç§ã®ãããžã§ã¯ãã®ããã€ãã¯ãã®ãã©ãããã©ãŒã ã«ç§»ãããŸããã çµæã¯æºè¶³ã§ãã-ãã¹ãŠãå®å®ããŠæ©èœãããã¬ãŒã ã¯ãŒã¯ã®ã¯ã©ã·ãã¯ããŒãžã§ã³ãããããã«é«éã§ããã ãã°ããããŠã.NET Coreã®éçºã«èå³ã®ããããã°ã©ãã®ã€ã³ã¿ãŒãããã³ãã¥ããã£ãçµç¹ããããšã«ããŸããã ã³ãã¥ãã±ãŒã·ã§ã³ã®æåã®ãã©ãããã©ãŒã ã¯Facebookã§ããã
ãã°ããããŠãTelegramã§ãã£ã³ãã«ãäœæããããšã«ããŸãããããã§ã.NET Coreã®éçºã«é¢é£ããããŸããŸãªãã¥ãŒã¹ãžã®ãªã³ã¯ãå ¬éãå§ããŸããã çŽ6ãæåŸãç§ã¯Telegramã¯ãã¥ãŒã¹ã¬ã¿ãŒã«ã¯éåžžã«äŸ¿å©ã§ãããåºçç©ã®æ€çŽ¢ãšæ§é åã«ã¯çµ¶å¯Ÿã«é©ããªããšçµè«ä»ããŸããã æéãçµã€ã«ã€ããŠããã£ã³ãã«ã®ãã¥ãŒã¹ãååã«é »ç¹ã«å ¬éãããå Žåããã£ãŒãã§ã¯å°ãªããšãå é±èªãã åºçç©ããã°ããèŠã€ããããšã¯ã»ãšãã©äžå¯èœã§ãã
Facebookã°ã«ãŒãããã®ã¿ã¹ã¯ã§ããŸãããŸããã£ãŠããŸããã§ããã ãããã£ãŠãæ å ±ãæ§é åããåºçç©ã®ããã²ãŒã·ã§ã³ããã䟿å©ã«ããããã«ãæçµçã«// devdigestãšåŒã°ããéçŽãµã€ããäœæããããšã«ããŸããã
åœç¶ã.NET Coreã¯éçºãã©ãããã©ãŒã ãšããŠæ¡çšãããŸããã ãããžã§ã¯ãèªäœã¯GitHubã®å ¬éãªããžããªã§ãã¹ããããŠããã誰ã§ããã®å éšæ§é ãšãœãŒã¹ã³ãŒããç¥ãããšãã§ããŸãã
ãã®èšäºã§// devdigestãšè©±ãæ¹æ³ã«ã€ããŠèª¬æããŸãã
WebããŒãžçšã®ãŠã£ãžã§ãããäœæãã
ãµã€ãã®äž»ãªã¿ã¹ã¯ã¯ããã¹ãŠã®åºçç©ã䟿å©ãªåœ¢åŒã§ä¿åããããšã§ãã ãµã³ãã«ã§ã¯ãââFacebookå€éšãªã³ã¯ã®èª¬æãã©ã®ããã«çæãããããåãäžããŸããããªã³ã¯ããšã«ãã¿ã€ãã«ãåçãçã説æããå°ããªãŠã£ãžã§ããã圢æãããŸãã
ãªã³ã¯ã®èª¬æãäœæããããã«ãå°ããªã©ã€ãã©ãªãäœæããŸããïŒãã®ãœãŒã¹ã³ãŒãã¯GitHubã§å ¥æã§ããã©ã€ãã©ãªèªäœã¯nuget.orgã§å ¬éãããŠããŸã ïŒã ã©ã€ãã©ãªã®ããžãã¯ã¯éåžžã«ã·ã³ãã«ã§ããªã³ã¯ãåãåã£ãåŸã HtmlAgilityPackã䜿çšããŠããã¥ã¡ã³ãã®ããã¥ã¡ã³ãã¢ãã«ïŒåãDOMããªãŒ ïŒã圢æããããã®ã¢ãã«ããæœåºãããŸãã
- æšæºã®ã¡ã¿ã¿ã°ïŒã¿ã€ãã«ãããŒã¯ãŒãã説æïŒã
- ãããã³ã«ã®OpenGraphã¡ã¿ã¿ã°ïŒãã®ãããã³ã«ã¯ãããšãã°Facebookã䜿çšããŸãïŒïŒogïŒtitleãogïŒimageãogïŒdescription
- ç»åãªã³ã¯
- 次ã«ãåä¿¡ããããŒã¿ãããã¡ã¿ããŒã¿ã¯ã©ã¹ã®ã€ã³ã¹ã¿ã³ã¹ã圢æãããWebã¢ããªã±ãŒã·ã§ã³ãåäœããŸãã
Telegramãšã®çµ±å
次ã®ã¹ãããã¯ãTelegramãã£ãã«ã§ã®ã¯ãã¹ã·ã§ã¢ãã¥ãŒã¹ã®ç·šæã§ããã ãã£ãã«ãžã®çŽæ¥å ¬éã®å¯èœæ§ã¯ãªãããã以åã¯ããããäœæããå¿ èŠããããŸããããããã®ä»£ããã«ãããªã±ãŒã·ã§ã³ãæçš¿ãããŸãã ãããã®äœææ¹æ³ã«ã€ããŠã¯ã ãã¡ãã§è©³ãã説æãããŠããŸã ã ããããäœæãããã管çè æš©éã§ãã£ãã«ã«è¿œå ããããŒã¯ã³ãååŸããå¿ èŠããããŸãã
ããã ãã§ã ããã§ããããã¯æçš¿ãå ¬éã§ããããã«ãªããAPIãä»ããŠããããå¶åŸ¡ã§ããããã«ãªããŸããã
ããããšå¯Ÿè©±ããã«ã¯ã å ¬åŒSDKã䜿çšããããšããå§ãããŸã ã ãã£ãã«ã«ã¡ãã»ãŒãžãéä¿¡ããããã®ã³ãŒãã¯æ¬¡ã®ããã«ãªããŸãã
ãã®ãµã€ãã«ã¯ãTelegramã§ã®å ¬éã«å ããŠãFacebookã§æçš¿ãäœæããæ©èœããããŸããã次åã¯ããã«ã€ããŠèª¬æããŸãã
ãã¹ãã£ã³ã°
ãããžã§ã¯ããé 眮ããå Žæã«ã¯ãåçšãããžã§ã¯ãã«äœ¿çšãããµãŒããŒã®1ã€ããŸãã¯Microsoft Azureã¯ã©ãŠãã®2ã€ã®ãªãã·ã§ã³ããããŸããã ã¯ã©ãŠãé 眮ãªãã·ã§ã³ã¯ãããã€ãã®çç±ã§æãŸãããã®ã§ããã
- é£ç¶é ä¿¡ãæ§æããæ©èœ-ãåç¥ã®ããã«ãAzure Web Appsã§ã¯ãGitHubãBitbucketãVisual Studio Team Servicesãç¬èªã®gitãªããžããªãããã«ã¯DropboxãOneDriveãããèªåçºè¡ãæ§æã§ããŸãã å°è±¡çãªãªã¹ãã§ããã devdigestã¯ããšããšãªãŒãã³ãœãŒã¹ãããžã§ã¯ããšããŠèæ¡ãããã³ãã¥ããã£ã®å ¬éãªããžããªã«é 眮ãããŠããããããã®å Žåã®ç¶ç¶çé ä¿¡èšå®ã¯æåéã10ç§ã«ãªããŸãã
- Applications Insight'sãšã®çµ±å-ã¢ããªã±ãŒã·ã§ã³ã®ãã¹ãŠã®ã¢ã¯ãã£ããã£ã远跡ããããŸããŸãªã¡ããªãã¯ãåéããäœãåé¡ãçºçããå Žåã«ã¬ã¿ãŒãéä¿¡ã§ãããµãŒãã¹
èªç¥ãµãŒãã¹
æéãçµã€ã«ã€ããŠããŠã§ããµã€ãã®åºçç©ã®ã¡ã€ã³ãã£ãŒãã«è±èªã®ã¿ã衚瀺ããããšã決å®ãããŸããããããã®ã»ãšãã©ãšãç°ãªãèšèªã§ã®ã³ã³ãã³ãã®äº€äºè¡šç€ºãããªãå¥åŠã«èŠããããã§ãã ãã¡ããããã®ãããªãã£ã«ã¿ãªã³ã°ãå®è£ ããããã«ããµã€ã管çè ã®ã€ã³ã¿ãŒãã§ãŒã¹ã§ãåºçèšèªãéžæããŠå¥ã®ã³ã³ãããã¯ã¹ãäœæããããšãã§ããŸããã ããããå°ãªããšãããã¯å¹³å¡ã§é¢çœããããŸããã ç¹ã«ãçŸåšå©çšå¯èœãªæ¢è£œã®æ©æ¢°åŠç¿ããŒã¹ã®ãµãŒãã¹ã®æ°ãèæ ®ããŠãã ããã ãã®ãããMicrosoft Azure Cognitive Servicesã®äžéšã§ããText Analytics APIã䜿çšããããšã«ããŸããã Text Analytics APIã䜿çšãããšãããã¹ãããããŒã¯ãŒããæœåºããããéä¿¡ãããããã¹ãã®èšèªã決å®ãããã§ããŸãã ããã¯ãŸãã«ç§ãå¿ èŠãšãããã®ã§ãã
ãµãŒãã¹ã®äŸ¡æ Œã¯éåžžã«äººéçã§ã-ã芧ã®ãšãããç¡æã®æéãã©ã³ã§ãããããã¹ãåæã®ããã®éåžžã«è±å¯ãªæ©äŒãæäŸããŸãïŒããŒãã¬ãŒãºã®æœåºãšããã¹ãã®èšèªã®æ±ºå®ã ããã¯ãŸãã«ç§ãã¡ãå¿ èŠãšãããã®ã§ãïŒ
4
nugetããã±ãŒãžãšããŠã€ã³ã¹ããŒã«ãããŠããSDKãšREST APIã®äž¡æ¹ã䜿çšããŠãText Analytics APIãæäœã§ããŸãã ç§èªèº«ã¯ãRestSharpã©ã€ãã©ãªãŒã䜿çšããŠREST APIã§äœæ¥ãããªãã·ã§ã³ãéžæããŸããã
APIã«ãªã¯ãšã¹ããè¡ãåã«ãããŒãååŸããå¿ èŠããããŸãã 管çããŒã¿ã«ã®é©åãªã»ã¯ã·ã§ã³ã§èŠã€ããããšãã§ããŸãã
ããŒãåãåã£ãããã¯ã©ã€ã¢ã³ããæºåã§ããŸãã
APIèªäœã¯éåžžã«ã·ã³ãã«ã§æçœã§ãã ããšãã°ãããã¹ãã®èšèªã決å®ã§ããã¯ãšãªã¯æ¬¡ã®ããã«ãªããŸãã
ããã¹ãåŠçé床ã¯ååã«éããããããŒãžã2段éã§åæãããŸãïŒæåã«èª¬æãã¿ã€ãã«ãç»åãæœåºããã次ã«åºçèšèªã®åæãå®è¡ãããŸãïŒãããã¹ãŠã®æé ã¯æ°ç§ã§å®äºããŸãã
ç¡æã®èšŒææžãSSLãLet's Encryptãnginx
ãµã€ãã¯SSL蚌ææžããµããŒãããªãå ±ææéãã©ã³ã§ãã¹ããããŠãããããHTTPSã䜿çšãããã®ã§ã蚌ææžãèšå®ãããããã·ãšããŠDigital OceanãµãŒããŒã®1ã€ã䜿çšããããšã«ããŸããã Let's Encryptã䜿çšããŠèšŒææžãååŸããæé ã«ã€ããŠã¯ãããšãã°ããã§è©³ãã説æããŠããã®ã§ã説æããŸããã ãããã·èšå®æé ãéåžžã«ãã°ããèŠã€ããããšãã§ããŸãããããã«ãã¹ãŠãã©ã®ããã«é 眮ãããŠãããã«ç¹ã«èå³ããã人㯠ãGitHub ã§å©çšå¯èœãªæ§æãã¡ã€ã«ãããŠã³ããŒãã§ããŸãã
ãŸãšã
ã§ã¯ãçŸæç¹ã§ã¯äœããããŸããïŒ çŸåšããããžã§ã¯ãã®å šäœçãªã¢ãŒããã¯ãã£ã¯æ¬¡ã®ããã«ãªã£ãŠããŸãã
çµ±åããããã«æ§æãããŠããæ å ±ãã©ãããã©ãŒã ã®èŠ³ç¹ãããããããããµã€ãäžã®å¯Ÿå¿ããã¹ããªãŒã ã«é¢é£ä»ããããŠãã3ã€ã®ç°ãªããã¬ã°ã©ã ãã£ãã«ãåºå¥ã§ããŸãã
devdigest //ãããã³ã¢ã¹ã¬ããã«ãé¢é£ä»ããããŠããFacebookããŒãžããŸã ãããŸã
ãµã€ã管çè ã®èŠ³ç¹ããèŠããšãUIã¯å¯èœãªéãã·ã³ãã«ã«èŠããŸãã
管çããã«ã¯ã4ã€ã®å ¥åèŠçŽ ã®ã¿ã§æ§æãããŠããŸãã
- ãªã³ã¯ãã£ãŒã«ã
- ã»ãã¥ãªãã£ããŒïŒç®¡çè ããšã«äžæã«çæãããŸãïŒ
- Telegramãã£ã³ãã«ãšFacebookããŒãžã«æçš¿ããã³ã¡ã³ã
- ãªã³ã¯ãå±ããã¹ããªãŒã
ãã®çµæãçæéãããªãæ§ãããªãªãœãŒã¹ã䜿çšããŠãããªãã·ã³ãã«ãªããŒã«ãæã«å ¥ããŸãããåæã«ãããã€ãã®ãµã€ããåããäœæ¥ãå€§å¹ ã«æé©åããããšãã§ããŸããã
èè ã«ã€ããŠ
Andrey Gubsky-ãœãããŠã§ã¢éçºããã³ã¢ãŒããã¯ãã£ã®ã¹ãã·ã£ãªã¹ãã .NET Core Ukraininan User Groupã®åµèšè ã CTOãããžã§ã¯ãPeat TVãéçºè ãITã³ã³ãµã«ã¿ã³ãã Visual Studioããã³éçºãã¯ãããžMVPã