Aleksey Terekhovã¯ã Platform Mail.Ruãããžã§ã¯ãã®åµèšè
ããã³ãããžã§ã¯ããããŒãžã£ãŒã§ããããã®æ çµã¿ã®äžã§ãMy WorldãœãŒã·ã£ã«ã¢ããªã±ãŒã·ã§ã³ãã©ãããã©ãŒã ãWebãµã€ãããã³ãœãŒã·ã£ã«ãã©ã°ã€ã³ã®APIãã¢ãã€ã«ããã³ãã¹ã¯ãããã¢ããªã±ãŒã·ã§ã³ã®APIãã¡ãŒã«ã¢ããªã±ãŒã·ã§ã³ã®APIãªã©ãéå§ãããŸããã Habrahabr ã®èŽè¡ããã®è³ªåã«çããŸããã
APIãä»ããMail.ruãŠãŒã¶ãŒã¡ãŒã«é£çµ¡å
ã®ã€ã³ããŒãã«ã€ããŠæããŠãã ãã
説æã«ã¡ãœãããèŠã€ãããŸããã§ããã
çŸåšãç§ãã¡ã®APIã¯ãã®ãããªã¡ãœãããæäŸããŠããŸããããè¿ãå°æ¥ããããäœæããäºå®ã§ãã ãã®ãããªæ©èœã«å¯Ÿããããã€ãã®ãªã¯ãšã¹ããæ¢ã«åãåã£ãŠããŸãããããã¯ç§ãã¡ã®èå³ã«å¯Ÿå¿ããŠããŸã-ã¡ãŒã«ããã¯ã¹ãããã¹ã¯ãŒããå
¥åããããã«æ±ããããå Žæãå°ãªãã»ã©ããŠãŒã¶ãŒã®ã»ãã¥ãªãã£ãé«ããªããŸãã ãããã®ã¡ãœããã®ç»å Žãapi.mail.ruã§çºè¡šããŸãã
ããã§ãªãå ŽåãMoiKrugã¯ã©ã®ããã«å®è£
ããŸãããïŒ
ãç§ã®ãµãŒã¯ã«ãã«ã€ããŠã¯è²¬ä»»ãè² ããŸããããã¡ãŒã«ãããã°ã€ã³åãšãã¹ã¯ãŒããåãåã£ãåŸãWebã€ã³ã¿ãŒãã§ãŒã¹ããŒãµãŒããPOP3ãä»ãããã¹ãŠã®åä¿¡ã¬ã¿ãŒã®åæãŸã§ãã¢ãã¬ã¹åž³ãåéããå€ãã®æ¹æ³ããããŸãã ããããããããã®1ã€ã䜿çšãããŸããã
ãããã®æ¹æ³ã䜿çšããããšã¯ãå§ãããŸããããããã®æ¹æ³ãå°æ¥ãåäœãç¶ãããšããä¿èšŒã¯ãªãããã§ãã ããã«ãAPIãä»ããŠææåãããæ¹æ³ã§ãŠãŒã¶ãŒã®ã¢ãã¬ã¹åž³ãåä¿¡ã§ããããã«ãªããŸãã
è¿ãå°æ¥ãã©ã®ãœãŒã·ã£ã«ãã©ã°ã€ã³ã衚瀺ãããŸããïŒ
çŸåšãã³ã¡ã³ããã©ã°ã€ã³ãšãAPIãä»ããŠãŠãŒã¶ãŒãæ¿èªããã³ç»é²ããç°¡åãªæ¹æ³ã«ã€ããŠæ€èšããŠããŸãã ãŸãããµã€ãã³ã³ãã³ããæ±ãèå³æ·±ããã©ã°ã€ã³ã®ã¢ã€ãã¢ãããã€ããããŸããããããã«ã€ããŠè©±ãã®ã¯ææå°æ©ã§ã-å±
å¿å°ã®è¯ãããã°ãšHabréã®çºè¡šã«åŸã£ãŠãã ããã
30ïŒ
ã®ææ°æãå°å
¥ããåŸãéçºè
ã®ãããŒã倧å¹
ã«æžå°ããããšãæããŠããŸãããïŒ ä»å¹Žãä»ã«ã©ããªé©ãããããŸããïŒ
å°ãæããªãã 30ïŒ
ã®ææ°æãèæ
®ããŠããã€ã³ã¿ãŒãããã®ãã·ã¢èªã»ã°ã¡ã³ãã®éçºè
ã«ãšã£ãŠæãæå©ãªæ¡ä»¶ããããŸãã ãããŠãäžçã¬ãã«ã§ã¯ãéåžžã«ç«¶äºã®æ¿ããç¶æ³ã«ãããŸãã
ããã«ãç§ãã¡ã®ä»äºã¯ããã©ãããã©ãŒã ã«å¯Ÿããéçºè
ã®è¯ãæ
床ãç²åŸããŠããŸãã ç§ãã¡ã¯åžžã«ãªãŒãã³ã§äºæž¬å¯èœã«ãªãããåªããŠããŸããããã¯ãããžãã¹ãè²ãŠããšã³ã·ã¹ãã ãæ§ç¯ããããã®åææ¡ä»¶ã§ãã ãã¹ãŠã®åžå Žåå è
ã¯ãã³ããã·ã§ã³ãã³ããã·ã§ã³ãããã®ãåŸ
ã£ãŠããŸããããããŠã圌ãã¯ããã®æºåãã§ããŠããŸããããããŠã圌ãã¯ç§ãã¡ã«å°ããŸããïŒ
é©ãã«ã€ããŠã¯-æ°ãããŠãŠããŒã¯ãªæè¡ãšããŒã±ãã£ã³ã°ã®æ©äŒãåŸ
ã£ãŠãç§ãã¡ã¯ãã£ãšç«ã£ãŠããã€ããã¯ãããŸããã
2æ1æ¥ãããéçºè
ããã®30ïŒ
ã®ãéã®éžæãæå¹ã«ãªããšãå©çãã©ã¡ãŒã¿ãŒã«ã¯ãæ¢ã«30ïŒ
ãå·®ãåŒãããéé¡ãŸãã¯è«æ±ã¹ã¯ãªãããªã¯ãšã¹ãã®å
ã®éé¡ãå«ãŸããŸããïŒ
çŸåšã®å©çãã©ã¡ãŒã¿ã¯ããã©ãããã©ãŒã ã®ææ°æãå·®ãåŒããåŸãçŽå©çã®é¡ãè¿ããŸãã
ããã¹ããã»ã¯ã·ã§ã³ããèŸ²å Žãã®ã³ã¬ã¯ã·ã§ã³ã«å€ããããšã«ã€ããŠã©ãæããŸããïŒ
ããã¯ãŠãŒã¶ãŒã®èå³ãåæ ããŠããŸã-圌ãã¯ãŸã èŸ²å Žã奜ãã§ãäœæéãããã«åº§ã£ãŠããŸãã ãŸããããã¹ããã»ã¯ã·ã§ã³ã§ã¯ãæãæåããã¢ããªã±ãŒã·ã§ã³ãèŠèŽè
ãç²åŸã§ããŸãã
äžæ¹ãMy Worldã«ã¯ã«ã¿ãã°ã«ãã§ã«4000以äžã®ã¢ããªã±ãŒã·ã§ã³ãããããã®äžã«ã¯å€ãã®èå³æ·±ããååã«æ®åããŠããªããã®ããããŸãã ãã®ãããã«ã¿ãã°ã®åŠçãæ€èšããŠããŸãããŠãŒã¶ãŒã®æ³šæãããèå³æ·±ãã²ãŒã ãã¢ããªã±ãŒã·ã§ã³ã®åºãç¯å²ã«åããããšèããŠããŸãã
ãœãŒã·ã£ã«ãããã¯ãŒã¯äžã®ã¢ããªã±ãŒã·ã§ã³ã®95ïŒ
ãã¯ããŒã³ã§ãããšããäºå®ã«ã€ããŠã©ãæããŸããïŒ åæ§ã®ã¢ããªã±ãŒã·ã§ã³ãéåžžã«å€æ°ããã®ã¯ãªãã§ããïŒ
ç§ã¯æèšã«ãŸã£ããåæããŸããã ã»ãšãã©ã®ã¢ããªã±ãŒã·ã§ã³ã¯ãåãéãããã²ãŒã ã¡ã«ãã¯ã¹ã»ããïŒãã¡ãŒã ããã«ããŒãtaikunãªã©ïŒã䜿çšããŸãããã¯ããŒã³ã§ã¯ãããŸããã æã人æ°ã®ãã5ã€ã®èŸ²å Žã§ã¯ãå
±éç¹ãé¡äŒŒç¹ããããããããŸãã ãããããŠãŒã¶ãŒã«å°ããŠãã ãã-圌ãã«ãšã£ãŠã¯ããããã¯ç°ãªãã²ãŒã ã§ããç±å¿ãªã²ãŒããŒã®ããã«ãBattlefield BC2ã¯Call of DutyïŒBlack Opsãšã¯ç°ãªããChromeãšã¯ç°ãªãFirefoxãªã¿ã¯ã®ããã«ã
ããã«ãããã¯å®å
šã«åžå Žã®è©±ã§ãã ãã®ãããªã²ãŒã ãã¢ããªã±ãŒã·ã§ã³ã®éèŠãããéãããããã¯äœãããŸãã ãŠãŒã¶ãŒã®é¢å¿ãèãå§ãããšããã«ã圌ãã¯æ°ããäœããæãã€ããŸãã å人çã«ã¯ããœãŒã·ã£ã«ã²ãŒã ãšã¢ããªã±ãŒã·ã§ã³ã®æ¥çãéäžçã«çºå±ãããæ°ããèå³æ·±ãã¡ã«ããºã ãšèšå®ãçã¿åºããŠããŸãã
ãªãOpenIDã§ã¯ãããŸãããïŒ
OpenIDã¯å éç»é²ãããã³ã«ã§ãã ç§ãã¡ã®ã¿ã¹ã¯ã¯ãå€éšãããžã§ã¯ãã«ãŠãŒã¶ãŒãè¿
éã«ç»é²ããæ©èœã ãã§ãªãããã®ãŠãŒã¶ãŒã«ä»£ãã£ãŠMail.RuããŒã¿ãšãµãŒãã¹ãžã®æ¿èªãããã¢ã¯ã»ã¹ã®å¯èœæ§ãæäŸããããšã§ãã
ãã®ããããã©ãããã©ãŒã ã§ã¯ãOAuth 2.0ãããã³ã«ããµããŒãããŸããïŒå
æ¥ã¢ããŠã³ã¹ãè¡ãããã¯ãã§ãïŒãããã«ããããŠãŒã¶ãŒãæ¿èªããå€éšãµã€ãã§ã®ç»é²ãå éããããã®å
æ¬çãªæ
å ±ãååŸã§ããŸãã
ãšããã§ãMail.Ruã®OpenIDããŒãžã§ã³1.0ã«ã¯openid.mail.ruããããŸã ã
ïŒã²ãŒã ã®æ¹åã§ã¯ãªãïŒéçºè
ãåŒãä»ããããã«ã³ã³ãã¹ããéå¬ããäºå®ã¯ãããŸããïŒ
以åã®ã³ã³ãã¹ãã®ROIã¯ãŒãã«è¿ãã£ããããçŸåšã¯ãã®ãããªæŽ»åãèšç»ããŠããŸããã 代ããã«ãAPIãéçºããŠããŸããããã«ããããã倧ããªçµæãåŸãããŸãã
ã¢ããªã±ãŒã·ã§ã³ã®åºåã¯éåžžã«é«äŸ¡ã§ããããããå¶åŸ¡ã§ããªããšããããšãç解ããŠããŸããïŒ çŸæç¹ã§ã¯ïŒ4.8ã«ãŒãã«ã 1000ã€ã³ãã¬ãã·ã§ã³ã§ã¯ãåºåãå¶åŸ¡ããããšã¯ã§ããŸãã-ãã¹ãŠã¯ãããŒãžã£ãŒãä»ããŠè¡ãããŸãã æå°ããã±ãŒãžã¯48,000ã«ãŒãã«ã§ãã äžæ¹ãVkontakte-1000ã€ã³ãã¬ãã·ã§ã³ããã0.3ã³ããã¯ããã管çããã«ãã¿ãŒã²ãã£ã³ã°ãã¯ãªãã¯ããšã®æ¯æãæ©èœããã¹ãŠããªã³ã¶ãã©ã€ã§ç®¡çããæ©èœãåããŠããŸãã ãã®ãšãªã¢ã§äœããè¡ãããŠããŸããïŒ
ãã¡ãããç解ããããšã§ãã ããããæ°åã«ã¯åŒ·ãå察ããŸãã 1000ã€ã³ãã¬ãã·ã§ã³ã®äŸ¡æ Œã¯1.39ã«ãŒãã«ããå§ãŸããã¯ãªãã¯çã¯å¹³å0.04ïŒ
ã§ãã¯ãªãã¯ãããã®ã³ã¹ãã¯3.47 pã§ãã VKontakteã§ã¯ãã¿ãŒã²ããèšå®ãªãã®æšå¥šã¯ãªãã¯å䟡ã¯3.22 pã§ãã éãã¯åçã§ã¯ãããŸãããããšã³ããªãŒã®ãããå€ã¯ç¢ºãã«é«ããªã£ãŠããŸãã çŸåšãåºåã®èªå販売ã·ã¹ãã ã«åãçµãã§ããã2011幎2æã«äŸ¡æ Œèšå®ããªã·ãŒã®ã¬ãã¥ãŒãšãšãã«éå§ããäºå®ã§ãã api.mail.ruã®ãã¥ãŒã¹ããã©ããŒãã
ã¢ã¬ã¯ã»ã€ãå¥åŠãªã¯ã©ã¹ãããŒãžã£ãŒodnoklassniki.ruãæçµçã«è§£æ£ããã¢ããªã±ãŒã·ã§ã³ãæ
åœããããã«ãªãã®ã¯ãã€ã§ããïŒ ããããããã¯ãå
±éã®APIãšã¢ãããŒãå
šäœã«ã€ãªããã§ãããïŒçŸåšãäŒç€Ÿã¯åç¬ã§ãïŒã
ã³ã¡ã³ãã¯ãããŸããã
ãã¯ãã«ã«ãµããŒããžã®çŽæ¥åŒã³åºãçšã®APIã®ç»å ŽãæåŸ
ã§ããŸããïŒ çŸåšã圌女ã®æ©èœã¯éåžžã«å¶éãããŠãããå€ãã®å Žåã圌女ã«æåŸ
ãããããšã¯ãŸã£ãããããŸããã
ç§ãã¡ã¯ããã«ã€ããŠèããŸããã§ããã ãã®ãããªAPIã®äœ¿çšæ¹æ³ã詳ããæããŠãã ããã
ã¢ããªã±ãŒã·ã§ã³ã«éçºè
ãè¿œå ããããšã¯å¯èœã§ããïŒ
ãã®æ©äŒã¯1幎è¿ãç¶ããŸãã ã
Alexeyã¯ãèäœæš©ã®éµå®ãçç±ã«ãMy Worldã®ã¢ããªã±ãŒã·ã§ã³ãå人çã«ãããã³ã°ããŸããã ãã ãããã¬ãçªçµãæ ç»ããªã³ã©ã€ã³ã§è¡šç€ºããæãmostæ
¢ãªã¢ããªã±ãŒã·ã§ã³ã¯ãåé¡ãªãäžéšã«è¡šç€ºãããŸãã 質åã®æ¬è³ªã¯ãæ確ãªããªã·ãŒã¯ã©ãã«ããã®ã§ããããïŒ
ã¢ããªã±ãŒã·ã§ã³ããã¹ãã£ã³ã°ããããã®èŠåã§æ確ãªæ¹éãå®ããŸã ã
ããªãã®äž»åŒµã«å¯ŸåŠããã«ã¯-詳现ãšäºå®ãå¿
èŠã§ãã ã©ã®ã¢ããªã±ãŒã·ã§ã³ããç§ãå人çã«ããããã³ã°ããããšãã«ãèäœæš©ã䟵害ããã¢ããªã±ãŒã·ã§ã³ããããã«ãã³ã°ã¢ããããŸãã app@corp.mail.ruã«æçŽãæžããŠãã ãããè¿äºã¯ãããŸããã
ã¢ããªã±ãŒã·ã§ã³ãä»ã®äººã«è»¢éããããšã¯å¯èœã§ããïŒ ããã§ãå¥ã®ãŠãŒã¶ãŒãã¢ããªã±ãŒã·ã§ã³ç®¡çïŒç®¡çïŒã«è¿œå ã§ããŸãããå
ã®ãäœæè
ãã¯åé€ã§ããŸãã ã
ã¢ãã¬ãŒã¿ãŒãä»ããŠãã¢ããªã±ãŒã·ã§ã³ãå¥ã®ã¢ã«ãŠã³ãã«è»¢éã§ããããã«ãªããŸããã ãããè¡ãã«ã¯ã転éãå¿
èŠãªã¢ããªã±ãŒã·ã§ã³ãé
眮ãããŠããã¢ã«ãŠã³ãããapp@corp.mai.ruã«ãªã¯ãšã¹ããæžã蟌ãå¿
èŠããããŸãã ãããã¢ããªã±ãŒã·ã§ã³ç®¡çã€ã³ã¿ãŒãã§ã€ã¹ã«é
眮ãããã®ã§ãããã¿ã¹ã¯ã®åªå
床ã¯éåžžã«äœããããæéã®é¢ã§ã¯äœãçŽæã§ããŸããã
VKontakteã«äŒŒããã€ã³ãã¬ãã·ã§ã³ã§ã¯ãªãã¯ãªãã¯èª²éå¶ã®åºåã·ã¹ãã ãèšç»ãããŠããŸããïŒ
èšç»äžãäžèšãåç
§ã
Vkontakteã®ããã«ãã¢ããªã±ãŒã·ã§ã³ã®å€éšãªã³ã¯ã®çŠæ¢ã解é€ããäºå®ã§ããïŒ ããã§ãã«ãŒã«ã«åŸã£ãŠããµã€ãã宣äŒã§ããŸãããå€éšã²ãŒã ãªã©ã®å®£äŒã¯ã§ããŸããã
ãããã®ãããžã§ã¯ãããµã€ãã®Mail.Ru APIãšçµ±åãããŠããå Žåãå€éšãããžã§ã¯ããžã®ãªã³ã¯ãæçš¿ã§ããŸãã ããããã©ãŠã¶ã²ãŒã ã®å ŽåãAPIã䜿çšããŠãã°ããç»é²ãã ããããããã¿ã³ãé
眮ããæ©èœãçµ±åã§ããŸã ã
ãªãããªãã¯ã¯ã©ã€ã¢ã³ããµãŒããŒã·ã¹ãã äžã§ãªãŒãã³ãæžããã®ã§ããïŒããã§ã¯ãããŒãçæãããšãã«å
¬ééµã䜿çšãããŸããããã¯jsã¹ã¯ãªããããååŸã§ããŸããã€ãŸã 誰ã§ãã©ã®ã¢ã«ãŠã³ãã«ãã¢ã¯ã»ã¹ã§ããŸããïŒ ããšãã°ãVkontakteã¯ç§å¯éµãšå
¬ééµã§äœæãããŠããŸãããFacebookããã®ãããªæ··ä¹±ã¯ãããŸãããããªãã ãããã®ãããªããªãã¯ãæã£ãŠããŸãã
ããã¥ã¡ã³ãããã®æç²ïŒsigãã©ã¡ãŒã¿ãŒã¯ãã¢ããªã±ãŒã·ã§ã³åæåãã©ã¡ãŒã¿ãŒã®çœ²åã§ãã æ»æè
ã«ããè©æ¬ºãé²ãããã«ããã©ã¡ãŒã¿ã®çœ²åã確èªããããšã匷ããå§ãããŸãã 眲åã¯ã ãµãŒããŒéREST APIã¹ããŒã ã«åŸã£ãŠèšç®ãããŸã ã
sigãã©ã¡ãŒã¿ãŒã¯çœ²åã®èšç®ã«ã¯é¢äžããªãããšã«æ³šæããŠãã ããã 眲åã«ã¯ç§å¯éµsecret_keyãå«ãŸããŠããããããµãŒããŒäžã§ã®ã¿æ€èšŒã§ããŸãã ãããã£ãŠãããªãã®äž»åŒµã«ã¯çç±ããããŸããã èŠæ±çœ²åã®èšç®ã«äœ¿çšãããsecret_keyããŒã¯ããŠãŒã¶ãŒã®ã¿ãç¥ã£ãŠããããµãŒããŒã«ä¿åãããŸãã ã¢ããªã±ãŒã·ã§ã³ã®ã¯ã©ã€ã¢ã³ãéšåã«éä¿¡ããªãã§ãã ããã
å
¬å¹³ãæããŠãããŒïŒprivate_keyãšsecret_keyïŒã®åœåã«äœããã®æ··ä¹±ãããããããããªããè¿·ãããããšã«æ³šæããŠãã ããã ããã¯æŽå²çéºç£ã®åé¡ã§ãã APIã®æ¬¡ã®ããŒãžã§ã³ïŒãã§ã«4çªç®ïŒã§ãã®åé¡ã解決ããããšèããŠããŸãã
open-apiã§vidãšãã©ã°ã§ã¯ãªããoidãŸãã¯vidãçºè¡ããå¿
èŠããã£ãã®ã¯ãªãã§ããïŒãŠãŒã¶ãŒãåããŠæ¥ããã©ããïŒã ããããã®æ··ä¹±ãèµ·ãããŸããïŒ
ããã¥ã¡ã³ãããã®æç²ïŒvidãã©ã¡ãŒã¿ãŒã«ã¯ãåžžã«ã¢ããªã±ãŒã·ã§ã³ã®çŸåšã®ãŠãŒã¶ãŒã®èå¥åãå«ãŸããŠããŸãã oidãã©ã¡ãŒã¿ãŒã¯ãã¢ããªã±ãŒã·ã§ã³ã®èµ·åæ¹æ³ã«ãã£ãŠç°ãªããŸãããŠãŒã¶ãŒã¯èªåã®å人ããŒãžããã¢ããªã±ãŒã·ã§ã³ãèµ·åã§ããoidã¯vidãšåãã«ãªããŸãã ãŠãŒã¶ãŒãã¢ããªã±ãŒã·ã§ã³ãã€ã³ã¹ããŒã«ããå¥ã®äººã®ããŒãžããã¢ããªã±ãŒã·ã§ã³ã«ã¢ã¯ã»ã¹ããå Žåãoidã«ã¯ã¢ããªã±ãŒã·ã§ã³ãã€ã³ã¹ããŒã«ãããŠãŒã¶ãŒã®èå¥åãå«ãŸããŸãã
ãããã£ãŠããã©ã¡ãŒã¿ãæž¡ãããã«ææ¡ããããªãã·ã§ã³ã¯ãããžãã¹ããžãã¯ã«é©åããŸããã ãããŠãæ¡çšããã¹ããŒã ã¯ããã«å¯Ÿå¿ããéåžžã«è«ççã§ãã
çµè«ãšããŠã質åã«ã€ããŠã®ãã¹ãŠã®åå è
ãšãHabrainterviewãå®æœããäž»å¬è
ã«æè¬ããŸãã ãã®åŸãæ°ããWebéçºè
ããã³ãœãŒã·ã£ã«ã¢ããªã±ãŒã·ã§ã³ã®éçºè
ãMail.Ru APIã«ãã£ãŠæäŸãããæ©äŒã«æ³šæãæãããšãé¡ã£ãŠããŸãã ç§ãã¡ã¯åžžã«è³ªåãæ¹å€ãåãä»ããŠããŸããapp@ corp.mail.ruã«éä¿¡ããŠãã ããã
ã¡ãªã¿ã«ãç§ãã¡ã¯Mail.Ru APIã§äœæ¥ããå
æ°ãªäººãåžžã«æ¢ããŠããŸãã ç¹ã«ããã©ãããã©ãŒã ã®ããã¢ãŒã·ã§ã³ãããŒãžã£ãŒïŒãšãã³ãžã§ãªã¹ãïŒãšããã¯ãšã³ãéçºè
ïŒPerl / C ++ïŒã®æ±äººãåéäžã§ãã å倧ãªéæãšæ©äŒãããæ倧ã®RunetäŒç€Ÿã®æãèå³æ·±ããããžã§ã¯ãã®1ã€ã§åãããå Žåã¯ãterekhov @ corp.mail.ruå®ã«ã¡ãŒã«ããã ããã