1 00:00:00,000 --> 00:00:02,480 [Powered by Google Translate] [Семинар] [програмер је Увод у АПИ] 2 00:00:02,480 --> 00:00:04,059 [Били Јанитсцх] [Универзитет Харвард] [Томи МацВиллиам] 3 00:00:04,059 --> 00:00:08,220 [Ово је ЦС50.] [ЦС50.ТВ] 4 00:00:08,220 --> 00:00:12,100 >> Здраво свима, ја сам Билли, а данас ћу да говорим о АПИ, 5 00:00:12,100 --> 00:00:15,220 или програмирање апликација интерфејс, 6 00:00:15,220 --> 00:00:20,040 посебно у контексту ЦС50 финалних пројеката и такве ствари. 7 00:00:20,040 --> 00:00:22,490 У принципу шта је АПИ? 8 00:00:22,490 --> 00:00:25,530 У веома ширем смислу, то је нека врста средњег човека који омогућава 2 комада 9 00:00:25,530 --> 00:00:28,610 софтвера да комуницирају једни са другима. 10 00:00:28,610 --> 00:00:32,530 То је врста веома широка дефиниција и није то релевантно за оно што гледамо. 11 00:00:32,530 --> 00:00:35,450 Оно што заиста желимо је нека врста корисног средњег тла 12 00:00:35,450 --> 00:00:40,570 да комуницира са неком врстом базе негде. 13 00:00:40,570 --> 00:00:43,310 >> Ево графикон, иу основи идеја је да 14 00:00:43,310 --> 00:00:46,790 смо апликација, а ми желимо да се подаци из базе података, 15 00:00:46,790 --> 00:00:49,570 али ми не желимо да директно упита базу података. 16 00:00:49,570 --> 00:00:52,710 Уместо тога, ми желимо да прођемо кроз ову врсту средње човека, АПИ. 17 00:00:52,710 --> 00:00:55,440 Идеја да је број 2 и 3 на графикону 18 00:00:55,440 --> 00:00:57,750 су оба ће бити веома компликовано и неуредно. 19 00:00:57,750 --> 00:00:59,960 Другим речима, када је АПИ упита базе података, 20 00:00:59,960 --> 00:01:03,300 вероватно ће бити користећи СКЛ столове и све те врсте ствари, 21 00:01:03,300 --> 00:01:05,489 а ми смо научили нешто о томе у ЦС50, али све у свему, 22 00:01:05,489 --> 00:01:07,590 Приметили сте да је помало боли. 23 00:01:07,590 --> 00:01:10,590 Постаје веома, веома компликовано и неуредна, посебно када правите 24 00:01:10,590 --> 00:01:12,530 комплексне упити и такве ствари. 25 00:01:12,530 --> 00:01:15,960 >> Оно што заиста желимо је нека врста корисних и једноставан начин 26 00:01:15,960 --> 00:01:19,780 да да податке, а то је идеја која стоји иза бројева 1 и 4 на графикону. 27 00:01:19,780 --> 00:01:23,600 Другим речима, желимо заиста једноставан начин да исприча шта АПИ да би за нас 28 00:01:23,600 --> 00:01:27,760 и заиста једноставан начин да вратимо те податке. 29 00:01:27,760 --> 00:01:33,020 Постоји један главни пут који су подаци се обично шаљу и примају, 30 00:01:33,020 --> 00:01:36,490 што је ЈСОН, или ЈаваСцрипт Објецт Нотатион. 31 00:01:36,490 --> 00:01:40,370 То може да варира мало колико и како сте послали захтев АПИ. 32 00:01:40,370 --> 00:01:43,210 Другим речима, ако желите неку одређену количину података, 33 00:01:43,210 --> 00:01:46,670 како сте рекли да се АПИ да подаци могу да се разликују мало. 34 00:01:46,670 --> 00:01:49,210 Обично то подразумева доношење неку мреже захтев. 35 00:01:49,210 --> 00:01:53,130 Другим речима, приступ некакву УРЛ који ће рећи АПИ 36 00:01:53,130 --> 00:01:56,190 тачно оно што желите, али подаци се готово увек шаљу назад, 37 00:01:56,190 --> 00:01:59,530 Другим речима, број 4 у ЈСОН. 38 00:01:59,530 --> 00:02:01,030 >> Шта је ЈСОН тачно? 39 00:02:01,030 --> 00:02:03,030 Као што сам рекао, ЈаваСцрипт Објецт Нотатион. 40 00:02:03,030 --> 00:02:07,090 То је у основи универзални стандард за пренос и пријем података. 41 00:02:07,090 --> 00:02:11,410 Идеја је да имате ове 3 категорије ствари. 42 00:02:11,410 --> 00:02:13,540 Имате низове, хасхмапс и примитивних. 43 00:02:13,540 --> 00:02:16,580 Низови и хасхмапс сте гледали мало у ЦС50, 44 00:02:16,580 --> 00:02:19,870 али сте некако добио веома строгу осећај шта су. 45 00:02:19,870 --> 00:02:22,780 Другим речима, са низовима знате да они упишите граница, 46 00:02:22,780 --> 00:02:26,560 тако да имате само једну врсту типа који иде у читавом низу. 47 00:02:26,560 --> 00:02:29,310 ЈСОН је много блажа са том ствари. 48 00:02:29,310 --> 00:02:33,590 У основи идеја је да изгради овај објекат, 49 00:02:33,590 --> 00:02:36,270 који се састоји од било које од ове 3 ствари 50 00:02:36,270 --> 00:02:39,470 и може бити састављена од више оних од њих, а они могу бити угњеждени. 51 00:02:39,470 --> 00:02:42,110 >> Ево нека врста пример ЈСОН, 52 00:02:42,110 --> 00:02:47,910 који је ове витичасте заграде овде представљају своју ХасхМап, 53 00:02:47,910 --> 00:02:51,400 и ХасхМап је у основи мапирање од неке врсте тастера 54 00:02:51,400 --> 00:02:53,340 некој врсти вредности. 55 00:02:53,340 --> 00:02:56,440 Ви ћете овде видети да имамо пропертиес кључ, 56 00:02:56,440 --> 00:02:59,600 и да је мапирање на низу, што је цела ова ствар. 57 00:02:59,600 --> 00:03:04,120 Ми видимо још један елемент ХасхМап, што је овај тастер исАвесоме, 58 00:03:04,120 --> 00:03:07,370 које мапе на примитивне вредности истина, другим речима, боолеан. 59 00:03:07,370 --> 00:03:09,420 Примитивци могу бити ниске. Они могу бити бројеви. 60 00:03:09,420 --> 00:03:11,960 Они могу бити боолс, тако нешто. 61 00:03:11,960 --> 00:03:18,410 И ви видите садржај овог низа то простори бодова има 2 жице у њему, 62 00:03:18,410 --> 00:03:20,050 само-сличне и дивно. 63 00:03:20,050 --> 00:03:27,410 То су 2 особине ЈСОН, и видимо да ЈСОН је страва. 64 00:03:27,410 --> 00:03:30,060 Да погледамо да мало ближе ја ћу да изгради 65 00:03:30,060 --> 00:03:32,870 сложенији пример ЈСОН овде. 66 00:03:32,870 --> 00:03:37,000 >> Почнимо са низа, на пример, само празну низ. 67 00:03:37,000 --> 00:03:39,180 Али то је нека врста досадно, па ћемо да га напуни мало, 68 00:03:39,180 --> 00:03:43,420 и као што сам рекао, низови у ЈСОН су тип граница, 69 00:03:43,420 --> 00:03:46,400 па бисмо могли и овде имамо ниску, што је здраво, 70 00:03:46,400 --> 00:03:49,330 и то је још један елемент тог низа. 71 00:03:49,330 --> 00:03:53,450 А исто тако, могли бисмо додати овде хасхмаппинг, који ће имати неколико мапирања. 72 00:03:53,450 --> 00:04:00,470 То ће имати мапирање из имена на ниску Билија. 73 00:04:00,470 --> 00:04:04,590 Имамо мапирање од имена до Билија, и имамо мапирање 74 00:04:04,590 --> 00:04:10,860 омиљена боја у плаву. 75 00:04:10,860 --> 00:04:12,700 То је у основи добар пример ЈСОН. 76 00:04:12,700 --> 00:04:18,160 Некако добија у-Упс, треба зарез тамо-све о различитим деловима њега. 77 00:04:18,160 --> 00:04:21,140 Опет, то није упишите везан уопште, тако да можете имати било какве врсте 78 00:04:21,140 --> 00:04:24,710 унутра шта желите, а идеја је да је само-сличан. 79 00:04:24,710 --> 00:04:28,830 Другим речима, ово овде је ЈСОН објекат, као што је цела ова ствар, 80 00:04:28,830 --> 00:04:33,200 јер је управо ово, тако да можете имати примитивна бити објекат, 81 00:04:33,200 --> 00:04:35,680 Низ бити предмет или ХасхМап буде предмет. 82 00:04:35,680 --> 00:04:40,270 >> Као што можете видети врста, ЈСОН је стварно корисно у смислу да је тако разноврстан. 83 00:04:40,270 --> 00:04:45,860 Можете имати све могуће податке које можете замислити налазе у ЈСОН. 84 00:04:45,860 --> 00:04:47,900 То га чини веома лепо језик за коришћење са АПИ 85 00:04:47,900 --> 00:04:50,770 јер то прилично значи да без обзира шта подаци које желите 86 00:04:50,770 --> 00:04:54,270 тамо ће бити неки начин да га вратим у ЈСОН. 87 00:04:54,270 --> 00:04:58,600 Неколико особине које чине ЈСОН посебно добар за овакве ствари. 88 00:04:58,600 --> 00:05:02,270 Као што можете видети, у поређењу са многим стварима које сте радили са у ЦС50 89 00:05:02,270 --> 00:05:06,040 то је релативно лако за читање и врло лако писати. 90 00:05:06,040 --> 00:05:09,700 Можете га алинеја да ли желите, као што сам радио у том примеру, 91 00:05:09,700 --> 00:05:12,990 што вам даје леп, леп верзију коју можете видети заиста добро. 92 00:05:12,990 --> 00:05:17,150 Али осим тога, то је такође једноставан за читање и писање за рачунар. 93 00:05:17,150 --> 00:05:19,870 Другим речима, то је лако да анализирамо и лако за кодирање, 94 00:05:19,870 --> 00:05:23,820 што значи да је прилично брз колико читања података тиче, 95 00:05:23,820 --> 00:05:26,460 и ЈСОН може генерисати веома брзо. 96 00:05:26,460 --> 00:05:30,300 >> Такође је врло лако да приступе различитим деловима ЈСОН и те ствари. 97 00:05:30,300 --> 00:05:33,320 То је лепо, а осим тога, чињеница да је само-сличан, 98 00:05:33,320 --> 00:05:36,090 Другим речима, чињеница да можете имати ЈСОН ЈСОН унутар унутар ЈСОН 99 00:05:36,090 --> 00:05:40,040 је стварно лепо за складиштење података. 100 00:05:40,040 --> 00:05:45,490 Други део који је углавном заиста корисно у раду са АПИ је јКуери. 101 00:05:45,490 --> 00:05:49,290 Ви сте научили мало ЈаваСцрипт-а, што је добар начин 102 00:05:49,290 --> 00:05:53,710 да манипулишу ХТМЛ и ЦСС у оквиру сајта. 103 00:05:53,710 --> 00:05:57,190 Али то може бити врста бол да кодом у обичном ЈаваСцрипт, 104 00:05:57,190 --> 00:05:59,810 углавном због тога што је ЈаваСцрипт заиста вербосе језик. 105 00:05:59,810 --> 00:06:03,020 Морате да научите много синтаксе, и само да радим врло једноставне ствари 106 00:06:03,020 --> 00:06:07,590 потребно је много кода, тако јКуери је библиотека за ЈаваСцрипт. 107 00:06:07,590 --> 00:06:09,800 Другим речима, то је Јава фајл који можете учитати 108 00:06:09,800 --> 00:06:12,730 и онда користите јкуери функције да ураде одређене ствари. 109 00:06:12,730 --> 00:06:15,670 А јКуери суштини чини ваш живот много лакше. 110 00:06:15,670 --> 00:06:20,390 То поједностављује оно што би узети стотине линија у ЈаваСцрипт-доле на неколико линија у јКуери. 111 00:06:20,390 --> 00:06:24,430 >> То је посебно корисно ако користите АПИ, јер генерално 112 00:06:24,430 --> 00:06:27,600 како ћете да приступите тако што је АПИ АЈАКС захтева, 113 00:06:27,600 --> 00:06:30,130 и верујем да је Дејвид помиње у предавању које АЈАКС захтева 114 00:06:30,130 --> 00:06:33,120 углавном када правите мрежни захтев за неком серверу 115 00:06:33,120 --> 00:06:37,760 и да се вратим неку врсту података и ажурирање тренутно страницу. 116 00:06:37,760 --> 00:06:41,840 Док у обичном ЈаваСцрипт да би узети луде број линија 117 00:06:41,840 --> 00:06:44,620 да потврди све заглавља и да све те врсте ствари, 118 00:06:44,620 --> 00:06:46,810 јКуери има заиста једноставну функцију која се зове АЈАКС, 119 00:06:46,810 --> 00:06:51,760 и све што треба да урадите је да даш у АЈАКС параметре које желите да дате АПИ, 120 00:06:51,760 --> 00:06:56,830 локација АПИ и сваки додатни врста опција које желите да подесите. 121 00:06:56,830 --> 00:07:02,480 То је стварно лепо и врло корисно за овакве ствари. 122 00:07:02,480 --> 00:07:06,970 То је све што нам је потребно да почну да нам руке прљаве у АПИ. 123 00:07:06,970 --> 00:07:10,220 >> Идем да доведе до неколико примера и истражи своје различите особине 124 00:07:10,220 --> 00:07:13,150 и зашто су они корисни за различите врсте ствари. 125 00:07:13,150 --> 00:07:15,570 Прва ствар коју сам заправо ћу вам показати нешто што ја радим на 126 00:07:15,570 --> 00:07:18,310 у мојој истраживачкој лабораторији, која је Нграм Виевер 127 00:07:18,310 --> 00:07:23,270 иу основи идеја о Нграм Виевер је можете тражити неку врсту речи 128 00:07:23,270 --> 00:07:28,840 или фраза и видите колико често се то појављује у одређеном сету текста током времена. 129 00:07:28,840 --> 00:07:33,160 Овај пример је овај скуп података о бебама 130 00:07:33,160 --> 00:07:36,480 који су рођени у Њујорку између 1920 и 2000. 131 00:07:36,480 --> 00:07:40,090 Можемо тражити, на пример, за име Џенифер, 132 00:07:40,090 --> 00:07:44,400 и видимо да пре-1960 стварно није користио све то много, 133 00:07:44,400 --> 00:07:48,900 и онда као што смо добили у позним годинама то постаје све више користи. 134 00:07:48,900 --> 00:07:53,680 Ми такође може да уради поређења, тако да ако се упореди Џенифер, на пример, Томас, 135 00:07:53,680 --> 00:07:56,520 можемо видети Томас је био прилично распрострањена на читавој историји, 136 00:07:56,520 --> 00:07:58,780 док је Џенифер скорија име. 137 00:07:58,780 --> 00:08:00,590 Можемо да урадимо такве ствари. 138 00:08:00,590 --> 00:08:02,460 >> Како ова апликација ради? 139 00:08:02,460 --> 00:08:06,030 У суштини, ради преко АПИ-ја. 140 00:08:06,030 --> 00:08:08,660 Другим речима, овде имамо одређене параметре. 141 00:08:08,660 --> 00:08:11,360 Имамо параметре шта заправо траже, 142 00:08:11,360 --> 00:08:13,720 које су ова имена, а онда ћемо имати неколико других својстава, 143 00:08:13,720 --> 00:08:16,570 као И осе и Кс оса. 144 00:08:16,570 --> 00:08:18,440 Можете видети да имамо неколико различитих опција што се тиче 145 00:08:18,440 --> 00:08:20,860 Време резолуција да користите и да ствари. 146 00:08:20,860 --> 00:08:26,700 Имамо ове опције што се тиче онога што ми заправо желимо подаци из базе података, 147 00:08:26,700 --> 00:08:29,400 и желимо да добијемо те податке назад у неки користан начин. 148 00:08:29,400 --> 00:08:34,020 Обично, ако смо упита базе података директно би некако било бол да радим 149 00:08:34,020 --> 00:08:38,970 јер вјероватно ови подаци о беби имена живи у некој бази података негде, 150 00:08:38,970 --> 00:08:42,789 и то ће бити заиста компликовано да га упита ручно 151 00:08:42,789 --> 00:08:45,830 и одлучи шта података да се врате. 152 00:08:45,830 --> 00:08:49,300 Другим речима, ми смо само стало Џенифер и Томом у овом случају, 153 00:08:49,300 --> 00:08:53,410 а ми само стало на одређеном осе и све те врсте ствари. 154 00:08:53,410 --> 00:08:55,720 >> Како ћемо добити око овога? 155 00:08:55,720 --> 00:09:01,200 Да копају у том АПИ мало ћу да вам покажем још један пример ове платформе 156 00:09:01,200 --> 00:09:04,490 који користи нешто другачији скуп података. 157 00:09:04,490 --> 00:09:09,950 Овај скуп података, уместо да буде беби имена, је уствари читава 158 00:09:09,950 --> 00:09:12,460 штампање података Објављивање Опен Либрари, 159 00:09:12,460 --> 00:09:18,410 који је гигант извор текстова објављених током последњих 100 година или тако. 160 00:09:18,410 --> 00:09:23,540 Идеја је да ми имамо ту цомпоситори о милионима и милионима текста, 161 00:09:23,540 --> 00:09:27,420 што сада можемо тражити за различите речи и фразе за 162 00:09:27,420 --> 00:09:30,840 Ево примера који се разликује мало другачије од претходног примера 163 00:09:30,840 --> 00:09:33,350 Показао сам ти, што је имамо ова 3 упите за претрагу, 164 00:09:33,350 --> 00:09:36,290 рат, рат, и француска реч за рат, који је псеудоним. 165 00:09:36,290 --> 00:09:40,380 И ми траже у року од 3 различитих делова укупне базе података. 166 00:09:40,380 --> 00:09:45,080 Другим речима, у овом првом упиту само трагате у САД, 167 00:09:45,080 --> 00:09:51,150 У другом само у Великој Британији, а трећи само са радовима објављеним у Француској. 168 00:09:51,150 --> 00:09:53,120 Ми видимо неке интересантне обрасце појавити. 169 00:09:53,120 --> 00:09:58,180 На пример, ми видимо овде који- 170 00:09:58,180 --> 00:10:02,410 Упс, ја сам забрљао оса мало, али можете видети праву у овом опсегу овде 171 00:10:02,410 --> 00:10:05,730 око грађанског рата било је велико класу у америчком издању 172 00:10:05,730 --> 00:10:08,340 али не тако велики скок у другој два, а то је очигледно, јер 173 00:10:08,340 --> 00:10:10,880 Амерички грађански рат се дешава у том тренутку. 174 00:10:10,880 --> 00:10:13,890 >> Можемо видети неке кул ствари тамо, 175 00:10:13,890 --> 00:10:17,070 али оно што нам је заиста стало је како смо добили ове податке. 176 00:10:17,070 --> 00:10:21,320 Ја ћу вас одвести иза сцене у овој апликацији у мало. 177 00:10:21,320 --> 00:10:24,540 Уредан трик је ако радите са сајта и врсте желе да знају 178 00:10:24,540 --> 00:10:27,430 шта се дешава иза сцене, можете да отворите алатке за програмере. 179 00:10:27,430 --> 00:10:30,200 Ја ћу користити Цхроме Девелопер Тоолс, а да се онима 180 00:10:30,200 --> 00:10:35,160 можете урадити контролу, смену, Ј, и да вас води до ЈаваСцрипт конзоли. 181 00:10:35,160 --> 00:10:37,420 Постоји неколико картица овде. 182 00:10:37,420 --> 00:10:39,680 Сви они могу бити прилично корисна под различитим околностима, али бринем о мрежи 183 00:10:39,680 --> 00:10:44,150 Картица сада, а ја заправо морати да освежите да се тај рад. 184 00:10:44,150 --> 00:10:50,180 Ох, извини. 185 00:10:50,180 --> 00:10:52,320 Она воли да насумични пример. 186 00:10:52,320 --> 00:10:54,700 Ок, ми ћемо користити овај пример уместо тада. 187 00:10:54,700 --> 00:11:01,330 >> Идеја је овде је ово АПИ 188 00:11:01,330 --> 00:11:05,330 и можете видети шта АПИ враћа. 189 00:11:05,330 --> 00:11:10,220 То је оно што апликација се вратимо из АПИ што је послао тај захтев. 190 00:11:10,220 --> 00:11:13,680 Дозволите ми да увећате мало, 191 00:11:13,680 --> 00:11:18,340 и ми у суштини се види да је то само низ кључних вредности парова у ЈСОН. 192 00:11:18,340 --> 00:11:23,220 Другим речима, ми имамо овде ХасхМап који је мапирање вредности. 193 00:11:23,220 --> 00:11:26,440 Другим речима, то је мапирање година на вредности. 194 00:11:26,440 --> 00:11:32,600 У 1765 год реч коју је првобитно тражили користи 90 пута 195 00:11:32,600 --> 00:11:35,810 од 1 милион, тако да смо се вратим овај резултат. 196 00:11:35,810 --> 00:11:40,280 Није баш ЈСОН пошто овде имамо ову малу резултат заглавље, 197 00:11:40,280 --> 00:11:45,630 али приметите да цео овај предмет овде је само велика ЈСОН грудвица. 198 00:11:45,630 --> 00:11:51,070 Имамо низ овде који садржи целу ову елемент, 199 00:11:51,070 --> 00:11:55,590 и можете видети да цела елемент завршава тамо, и онда имамо једну велику елемент 200 00:11:55,590 --> 00:11:59,430 који иде скроз доле до краја, а да се овде завршава. 201 00:11:59,430 --> 00:12:02,200 Имамо заиста велики низ са 2 објектима у њему, 202 00:12:02,200 --> 00:12:04,630 и сваки од тих објеката је ХасхМап. 203 00:12:04,630 --> 00:12:07,340 Можете видети у свакој од тих хасхмапс имамо мапирање 204 00:12:07,340 --> 00:12:12,700 ове вредности индекса до 0 и ова вредност је вредност на другу ХасхМап, 205 00:12:12,700 --> 00:12:18,360 што опет је мапирање к оси вредности И осе вредности. 206 00:12:18,360 --> 00:12:20,970 >> Можете видети ЈСОН добије мало компликовано, али све у свему, 207 00:12:20,970 --> 00:12:24,190 то је заправо веома корисно, и то је врло лако да приступите у односу на 208 00:12:24,190 --> 00:12:27,390 други различити облици нотацији. 209 00:12:27,390 --> 00:12:30,550 Што се тиче онога што смо заправо шаљемо податке АПИ добити, 210 00:12:30,550 --> 00:12:34,690 Ја идем у задњем крају овде мало. 211 00:12:34,690 --> 00:12:39,850 Ово је велики ЈаваСцрипт фајл који је руковање све интеракције веб апликација, 212 00:12:39,850 --> 00:12:44,810 па ми не бринемо о већини, али ми је стало нешто од тога. 213 00:12:44,810 --> 00:12:47,410 На пример, ми бринемо о овом буилдКуери функције, 214 00:12:47,410 --> 00:12:50,670 и идеја ове функције је у основи то гледа около стране, 215 00:12:50,670 --> 00:12:53,750 схватите шта корисник жели да упита, другим речима, 216 00:12:53,750 --> 00:12:57,090 провере те кутије у којима они инпут своје термине за претрагу, 217 00:12:57,090 --> 00:13:01,380 провере различите И и Кс оса вредности које су они изабрали и све такве ствари, 218 00:13:01,380 --> 00:13:06,650 и то це да пљује ову упита вредност, која онда могу послати ван на АПИ. 219 00:13:06,650 --> 00:13:09,180 >> Ово изгледа компликовано, и то је прилично компликовано 220 00:13:09,180 --> 00:13:18,090 али шта ћу да радим, у ствари, ја сам већ ово радим, што је одлично, 221 00:13:18,090 --> 00:13:21,640 је да ћу добити конзолу да одштампате тачно да упита вредност 222 00:13:21,640 --> 00:13:28,110 да се то слања на АПИ. 223 00:13:28,110 --> 00:13:30,870 То је заправо овде. Извини, то излази доста ствари. 224 00:13:30,870 --> 00:13:33,690 Али то је оно што ми је стало, овај објекат баш овде. 225 00:13:33,690 --> 00:13:35,300 То је питање објекат. 226 00:13:35,300 --> 00:13:40,670 Другим речима, то је управо оно што веб апликација шаље на АПИ, 227 00:13:40,670 --> 00:13:45,730 па хајде да погледамо унутра мало и видимо да имамо овде неколико вредности. 228 00:13:45,730 --> 00:13:48,710 Ми видимо да имамо ту врсту бројања, што је појава на милион речи, 229 00:13:48,710 --> 00:13:51,460 што је управо оно што смо изабрали у И оси овамо. 230 00:13:51,460 --> 00:13:53,740 То је место где то долази. 231 00:13:53,740 --> 00:13:58,010 Имамо базу података вредност, што значи да постоји нека одређена база 232 00:13:58,010 --> 00:14:01,610 да ови подаци се живи, а ми желимо да се конкретно приступ тим подацима 233 00:14:01,610 --> 00:14:04,950 за разлику од беба имена подацима, на пример. 234 00:14:04,950 --> 00:14:08,320 Онда имамо ову група вредност, 235 00:14:08,320 --> 00:14:12,090 који је рекао да желимо да претражујете по години, за разлику од 236 00:14:12,090 --> 00:14:16,030 било који други Кс оса вредност. 237 00:14:16,030 --> 00:14:19,040 Онда имамо метод који неки АПИ ће учинити више ствари. 238 00:14:19,040 --> 00:14:22,360 Другим речима, овај АПИ се такође вратити и друге врсте података, 239 00:14:22,360 --> 00:14:27,740 али у овом случају, желимо да мапирање к оса вредности на и оси вредности. 240 00:14:27,740 --> 00:14:30,730 То је оно што се то говори да тамо раде, 241 00:14:30,730 --> 00:14:35,020 и ми имамо тај ограничава претрагу низ који садржи 2 вредности. 242 00:14:35,020 --> 00:14:40,720 Први је оно што смо овде видели, што је све вредности 243 00:14:40,720 --> 00:14:43,020 садржане у том првом малу кутију на врху. 244 00:14:43,020 --> 00:14:47,570 >> Другим речима, желимо да тражимо реч битку, и желимо да га филтрирате 245 00:14:47,570 --> 00:14:51,920 од енглеских текстова у америчкој књижевности. 246 00:14:51,920 --> 00:14:54,590 Ми имамо ову земљу, која је САД. 247 00:14:54,590 --> 00:14:59,130 Имамо језик, који је енглески, тако да смо све ове различите делове 248 00:14:59,130 --> 00:15:02,690 да су сви говорили АПИ тачно оно што желимо. 249 00:15:02,690 --> 00:15:04,940 Ми не знамо шта је податак да се вратимо још, 250 00:15:04,940 --> 00:15:10,970 али ми знамо да подаци ће узети одређени облик. 251 00:15:10,970 --> 00:15:13,650 Овај пример је некако на компликоване страни, 252 00:15:13,650 --> 00:15:16,180 и не би нужно користити АПИ овај комплекс 253 00:15:16,180 --> 00:15:20,600 али то је да вам покаже опсег и снагу онога АПИ може да уради. 254 00:15:20,600 --> 00:15:24,980 Другим речима, коришћењем релативно једноставног упита систему ми у суштини имамо поље за унос 255 00:15:24,980 --> 00:15:29,490 са неколико других селектора на различитим местима. 256 00:15:29,490 --> 00:15:32,010 >> Дозволите ми да се умањили овде. 257 00:15:32,010 --> 00:15:37,720 Имамо улазни кутију са неколико различитих метаподатака селекцијама, 258 00:15:37,720 --> 00:15:40,610 и имамо И осу и к оси селекције. 259 00:15:40,610 --> 00:15:42,830 Ми заправо не морају да се много поља, 260 00:15:42,830 --> 00:15:46,210 и можемо лако видети да смо у стању да упита некакав АПИ 261 00:15:46,210 --> 00:15:48,510 и добити податке назад, а затим ставите га у овој табели, 262 00:15:48,510 --> 00:15:52,080 који је онда ће то приказати на користан начин. 263 00:15:52,080 --> 00:15:54,970 Да погледамо још један пример који би могао да буде мало више упознати са вама 264 00:15:54,970 --> 00:15:56,510 ћемо да се окрену на Фацебоок. 265 00:15:56,510 --> 00:15:59,440 Фацебоок АПИ зове Фацебоок Граф, 266 00:15:59,440 --> 00:16:04,390 иу суштини шта то значи је Фацебоок себе види као ове масовне базе 267 00:16:04,390 --> 00:16:08,000 од много различитих делова који све имају одређене везе једни са другима. 268 00:16:08,000 --> 00:16:11,070 Другим речима, ја сам корисник на Фацебоок-у, тако да имам профил, 269 00:16:11,070 --> 00:16:14,310 и ја такође имају одређене пријатеље, а свака од њих има профил, 270 00:16:14,310 --> 00:16:17,580 и сваки од мојих пријатеља има зид, који има различите коментаре на њега, 271 00:16:17,580 --> 00:16:20,800 и свака од тих коментара има воли и све те ствари. 272 00:16:20,800 --> 00:16:23,100 >> Постоји много различитих делова на Фејсбуку. 273 00:16:23,100 --> 00:16:26,670 То је изузетно сложен АПИ и има тона можете да урадите са њом, 274 00:16:26,670 --> 00:16:28,450 али то је заправо прилично једноставан за коришћење. 275 00:16:28,450 --> 00:16:33,680 Идем да почне тако што ћете грапх.фацебоок.цом / биллијанитсцх, 276 00:16:33,680 --> 00:16:38,430 што је моје јединствено име налога, а ваше име налог ће бити или 277 00:16:38,430 --> 00:16:43,710 нека врста речи, ако сте га изабрали, или је то само може бити низ бројева. 278 00:16:43,710 --> 00:16:46,360 Оно што ми вратимо прилично основне информације. 279 00:16:46,360 --> 00:16:50,460 Видимо да имам име, што је Били, презиме, што је Јанитсцх. 280 00:16:50,460 --> 00:16:53,370 Постоји јединствена Фацебоок ИД који имам. 281 00:16:53,370 --> 00:16:57,920 Можете видети да сам мушко и да имам свој језик поставку 282 00:16:57,920 --> 00:17:01,290 британском енглеском. 283 00:17:01,290 --> 00:17:03,490 Другим речима, ми овде видимо веома основне информације. 284 00:17:03,490 --> 00:17:08,670 Није превише, али то не даје нам идеју о томе шта је тамо. 285 00:17:08,670 --> 00:17:10,849 >> Можемо да урадимо исту ствар Давид Малан, на пример. 286 00:17:10,849 --> 00:17:13,599 Мислим да му је име дмалан. 287 00:17:13,599 --> 00:17:16,369 Видимо Дејвид Малан има јединствени ИД. 288 00:17:16,369 --> 00:17:19,300 Он има име, име, средње име, презиме. 289 00:17:19,300 --> 00:17:24,210 Ми такође видимо да је он мушко и има свој језик скуп на америчком енглеском. 290 00:17:24,210 --> 00:17:26,869 Другим речима, ми овде видимо прилично основне информације. 291 00:17:26,869 --> 00:17:28,860 Дакле, шта се дешава ако покушамо да проверимо нешто друго? 292 00:17:28,860 --> 00:17:33,060 Рецимо да сам заинтересован за оно што Дејвид Малан је волео на Фејсбуку. 293 00:17:33,060 --> 00:17:36,860 Ја могу да урадим / воли. Сада смо покренули у проблему. 294 00:17:36,860 --> 00:17:39,280 Имамо некакву грешку која каже приступну токен 295 00:17:39,280 --> 00:17:41,660 је потребно да затражи овај ресурс. 296 00:17:41,660 --> 00:17:44,730 Али ако мислите о томе, да заправо има смисла, јер би то било чудно 297 00:17:44,730 --> 00:17:47,830 ако би могао приступити сваки део базе података Фацебоока 298 00:17:47,830 --> 00:17:50,170 Управо из неке врсте једноставне АПИ, зар не? 299 00:17:50,170 --> 00:17:56,040 Другим речима, претпоставља се ваша информација не може приступити било ко ко га жели. 300 00:17:56,040 --> 00:17:58,330 >> Ова грешка је управо оно што то значи. 301 00:17:58,330 --> 00:18:03,630 Неки АПИ захтевају одређене дозволе да би приступили својим подацима. 302 00:18:03,630 --> 00:18:06,940 И још напреднији АПИ, као и Фацебоок један, 303 00:18:06,940 --> 00:18:09,840 ће захтевати одређене дозволе да ураде одређене ствари. 304 00:18:09,840 --> 00:18:12,650 Видим ову основну информацију о Давиду Малан. 305 00:18:12,650 --> 00:18:15,950 Видим да је он мушко и да живи у САД, 306 00:18:15,950 --> 00:18:19,270 али ја стварно не могу видети ништа прошлости то. 307 00:18:19,270 --> 00:18:23,050 Како би се ово за сада, Фацебоок има овај леп алат 308 00:18:23,050 --> 00:18:27,690 који је граф АПИ истраживач, а идеја да је можете некако 309 00:18:27,690 --> 00:18:31,880 чине дозволе за себе на основу свог налога 310 00:18:31,880 --> 00:18:35,680 и онда видите ствари које конкретно ваш налог да прегледате. 311 00:18:35,680 --> 00:18:45,120 На пример, ако ја урадим грапх.фацебоок.цом/биллијанитсцх/ликес- 312 00:18:45,120 --> 00:18:53,510 Упс, мислим да овде продуже свој жетон. 313 00:18:53,510 --> 00:18:55,950 Ок. 314 00:18:55,950 --> 00:19:01,740 Ако то урадим поново, супер, сад видим да сам се вратио овај објекат 315 00:19:01,740 --> 00:19:06,300 која каже да ја волим базен резанце, који су у категорији Игре и играчке. 316 00:19:06,300 --> 00:19:08,620 Волим моржеви, који су у категорији животиња. 317 00:19:08,620 --> 00:19:10,180 Ово су моја стварна Фацебоок воли. 318 00:19:10,180 --> 00:19:13,280 Они су некако непријатно. 319 00:19:13,280 --> 00:19:16,090 >> Али ми можемо видети овај податак се све враћа у ЈСОН. 320 00:19:16,090 --> 00:19:18,160 То је прилично читљив. 321 00:19:18,160 --> 00:19:20,970 Другим речима, имамо овај мапирање података неком низу, 322 00:19:20,970 --> 00:19:25,220 и сваки елемент овог низа је ХасхМап која пресликава 323 00:19:25,220 --> 00:19:28,530 назив као и категорија као. 324 00:19:28,530 --> 00:19:31,240 Сваки попут има јединствени ИД. 325 00:19:31,240 --> 00:19:34,510 Постоје све врсте различитих ствари података које можемо добити, 326 00:19:34,510 --> 00:19:37,980 а ако сте заинтересовани за коришћење Фацебоок АПИ за ЦС50 завршног пројекта 327 00:19:37,980 --> 00:19:40,720 или за било шта као да је то заправо сасвим изводљиво. 328 00:19:40,720 --> 00:19:44,260 У суштини како се око веродостојности ствари је Фацебоок 329 00:19:44,260 --> 00:19:48,030 користи систем назван ОАутх, или отворите аутентикација, 330 00:19:48,030 --> 00:19:52,870 а ја не желим да улазим у то сада, јер ОАутх или другачији тип 331 00:19:52,870 --> 00:19:56,060 овере тежи да доста разликују између различитих АПИ, 332 00:19:56,060 --> 00:19:58,320 тако да сам могао да проведу дуго времена иде преко сваке један, 333 00:19:58,320 --> 00:20:01,170 али они су заправо прилично саморазумљиво. 334 00:20:01,170 --> 00:20:04,050 >> Ако Гоогле Фацебоок АПИ-је веома читљив. 335 00:20:04,050 --> 00:20:06,670 Постоји читав спец. 336 00:20:06,670 --> 00:20:10,210 На пример, ово је документација за Фацебоок АПИ, 337 00:20:10,210 --> 00:20:14,170 и можете видети да сам на страни Усер, тако да могу да науче све о различитим врстама ствари 338 00:20:14,170 --> 00:20:17,170 које су на располагању да се колико год је податке 339 00:20:17,170 --> 00:20:21,550 и различите дозволе које ми је потребно да би им приступили. 340 00:20:21,550 --> 00:20:25,470 Као што смо видели, не морамо дозволе за приступ име или пол, 341 00:20:25,470 --> 00:20:29,380 али осим тога ми треба дозвола за већину ствари. 342 00:20:29,380 --> 00:20:33,040 Ова страница, односно, овај сајт ће вам рећи како да се 343 00:20:33,040 --> 00:20:35,640 знак да може да се аутентификује. 344 00:20:35,640 --> 00:20:39,290 Већина аутентичности системи користе неку врсту токена 345 00:20:39,290 --> 00:20:42,880 где сте добили ову јединствену вредност, што је заиста дуго и случајни стринг, 346 00:20:42,880 --> 00:20:46,240 и на тај начин они могу удруживати захтев да правиш са вама. 347 00:20:46,240 --> 00:20:50,560 Другим речима, они знају да ви не радите ништа сумњиво са својим подацима. 348 00:20:50,560 --> 00:20:53,340 Они тачно знају шта циљаш. 349 00:20:53,340 --> 00:20:56,180 Они такође знају да имате дозволу да видите ту информацију. 350 00:20:56,180 --> 00:20:59,110 >> Ако сте направили Фацебоок апликација и ваша апликација има одређене кориснике, 351 00:20:59,110 --> 00:21:03,380 а ти корисници су дозволиле да се апликацији да приступи одређеним деловима свог профила, 352 00:21:03,380 --> 00:21:07,790 онда шта год АПИ кључ или знак да је апликација користи 353 00:21:07,790 --> 00:21:11,090 ће моћи да приступе подацима за те кориснике. 354 00:21:11,090 --> 00:21:13,780 Ово можда звучи компликовано, али није лоше, 355 00:21:13,780 --> 00:21:16,810 и ако желите да користите Фацебоок ја високо бих препоручио да 356 00:21:16,810 --> 00:21:18,990 сматрају се играју са својим АПИ. 357 00:21:18,990 --> 00:21:21,610 То је веома кул, а ви можете да урадите много различитих ствари са њом. 358 00:21:21,610 --> 00:21:24,880 Уколико корисник вам даје ове дозволе можете чак вратити на АПИ 359 00:21:24,880 --> 00:21:28,820 и кажем да заиста објавите на зиду овог корисника, или желим да их поставите фотографију, 360 00:21:28,820 --> 00:21:32,390 и то је разлог зашто на вести феед понекад ћете добити оне досадне ствари 361 00:21:32,390 --> 00:21:37,840 изрека ваш пријатељ је гледао овај видео на некаквој чудној сајта или нешто слично томе. 362 00:21:37,840 --> 00:21:43,120 То је зато што апликација је добила могућност да постављате на зиду те особе. 363 00:21:43,120 --> 00:21:48,350 Укупан идеја, Фацебоок АПИ је прилично компликовано, али такође веома корисна. 364 00:21:48,350 --> 00:21:53,220 Дефинитивно вреди да ли сте још увек у потрази за коначном пројекат. 365 00:21:53,220 --> 00:21:57,930 >> Други пакет АПИ да идем преко је ЦС50 АПИ. 366 00:21:57,930 --> 00:22:00,070 Дозволите ми да увећате овде. 367 00:22:00,070 --> 00:22:03,390 ЦС50 је заправо ставио заједно читав низ АПИ 368 00:22:03,390 --> 00:22:07,080 које можете да користите за коначни пројекат или само за све што сте одлука. 369 00:22:07,080 --> 00:22:12,830 И они су углавном везани Харварду, а они зависе од Худс менија, 370 00:22:12,830 --> 00:22:17,780 на пример, за ову Харвард догађаји АПИ, који ће вам омогућити да приступите листи 371 00:22:17,780 --> 00:22:21,290 различити догађаји који су се дешавају на Харварду и такве ствари. 372 00:22:21,290 --> 00:22:24,510 И тако можемо да кликнете на било који од њих и добити спецификацију за њу, 373 00:22:24,510 --> 00:22:28,090 које ћете моћи да пронађете за било АПИ, а идеја је 374 00:22:28,090 --> 00:22:33,920 омогућава вам да знате,, конкретно шта да тражи од АПИ и како да га траже. 375 00:22:33,920 --> 00:22:37,370 Другим речима, ако желим све догађаје који се дешавају сутра 376 00:22:37,370 --> 00:22:42,550 онда морам да је очигледно да дају тај датум који желим у одређеном формату, 377 00:22:42,550 --> 00:22:46,030 и Б, она ће ми рећи тачно шта ће да врати мени. 378 00:22:46,030 --> 00:22:48,590 То ће рећи ћу вам вратити тај ЈСОН објекат, 379 00:22:48,590 --> 00:22:50,960 или као што можете видети, постоје различити формати. 380 00:22:50,960 --> 00:22:54,050 >> Такође можете да вратите податке као ЦСВ, на пример. 381 00:22:54,050 --> 00:22:57,620 Али, знате тачно како да се подаци ће изгледати када га вратим 382 00:22:57,620 --> 00:23:00,610 тако да можете да очекујете да урадим неке ствари са њим. 383 00:23:00,610 --> 00:23:07,240 Можемо идите доле и види, на пример, ако желимо да упита АПИ 384 00:23:07,240 --> 00:23:11,500 да се календар, онда можемо да користимо ову конкретну адресу 385 00:23:11,500 --> 00:23:16,480 и да дају одређене параметре који ће бити подаци које смо управо желели. 386 00:23:16,480 --> 00:23:19,540 А исто тако, ако желимо податке назад у одређеном формату, 387 00:23:19,540 --> 00:23:23,790 онда можемо тражити да излаз података у ЦСВ, 388 00:23:23,790 --> 00:23:27,700 и то је само још један параметар који смо пролази у АПИ. 389 00:23:27,700 --> 00:23:29,210 Много занимљивих ствари да се ураде тамо. 390 00:23:29,210 --> 00:23:32,550 Дефинитивно бих препоручио одјавите ЦС50 АПИ. 391 00:23:32,550 --> 00:23:36,000 >> Идем да погледам ову Харвард хране АПИ посебно за мало. 392 00:23:36,000 --> 00:23:39,870 Једна ствар коју сам стварно сам дизајнирао је овај Харварду Номс сајт, 393 00:23:39,870 --> 00:23:44,930 који користи ЦС50 хране АПИ да преузме Худс мени за тај дан. 394 00:23:44,930 --> 00:23:50,400 А за људе за проширење школе, Худс је трпезарија услуга на Харварду. 395 00:23:50,400 --> 00:23:55,130 Оно што добијате је ова страница која садржи све од јела за тај дан, тако да видимо ручак. 396 00:23:55,130 --> 00:23:58,130 Имамо неколико различитих категорија. Имамо пасуљ и цело зрно станицу. 397 00:23:58,130 --> 00:24:00,340 Имамо браон пиринач станицу. 398 00:24:00,340 --> 00:24:03,360 Можемо видети за бранч имамо ових неколико прехрамбених артикала. 399 00:24:03,360 --> 00:24:07,030 Ако се кликне на њих, онда добијамо информације исхране. 400 00:24:07,030 --> 00:24:12,240 Видиш ово је информација за исхрану грејпфрут, у случају да се питате. 401 00:24:12,240 --> 00:24:14,870 И тако опет идемо на завири у задњем крају овде мало 402 00:24:14,870 --> 00:24:18,530 и видети шта се то ради да би добили ове податке. 403 00:24:18,530 --> 00:24:21,710 И испоставило се да није заправо бити веома сложен уопште. 404 00:24:21,710 --> 00:24:28,720 Овај фајл изгледа мало наопако, али имајте на уму да је ово руковање цео сајт, 405 00:24:28,720 --> 00:24:34,130 и ако сам доле помицати видимо ове податке функцију промена. 406 00:24:34,130 --> 00:24:36,630 >> Сада, само да буде јасно, ово је написано у ЦоффееСцрипт, 407 00:24:36,630 --> 00:24:39,570 што је језик који ви вероватно нисте видели. 408 00:24:39,570 --> 00:24:44,810 Али то је прилично читљив, тако да ћу проћи кроз њу као да је Псеудокод. 409 00:24:44,810 --> 00:24:49,080 Промена датума је функција која ће се предузети у овом временском вредности, 410 00:24:49,080 --> 00:24:51,740 а такође ће се узети у првом, коју није брига колико. 411 00:24:51,740 --> 00:24:54,110 Али важно је да има овај датум, 412 00:24:54,110 --> 00:25:00,080 и тај датум је дан који желимо да затражи све прехрамбених артикала за. 413 00:25:00,080 --> 00:25:04,030 И онда видиш да имамо овде мало синтаксе, 414 00:25:04,030 --> 00:25:09,000 која је у основи анализи тог датума у ​​читљивом формату. 415 00:25:09,000 --> 00:25:11,920 Другим речима, АПИ захтева датум у одређеном формату. 416 00:25:11,920 --> 00:25:17,390 Не можете само рећи 16. новембра 2012 АД. 417 00:25:17,390 --> 00:25:20,320 Она неће знати шта да раде са тим. Она жели датум у одређеном формату. 418 00:25:20,320 --> 00:25:23,230 Све што радимо овде је да управо то даје формат, 419 00:25:23,230 --> 00:25:26,520 који је годину дана вредност и онда цртица, месец вредност, 420 00:25:26,520 --> 00:25:29,420 друга цртица и датум вредност. 421 00:25:29,420 --> 00:25:34,910 И ми такође кажу желимо да подаци буду излаз у ЈСОН. 422 00:25:34,910 --> 00:25:37,560 >> Сада смо тако да је ово АЈАКС захтев, и као што сам раније поменуо, 423 00:25:37,560 --> 00:25:41,680 јКуери је овај супер корисну функцију која АЈАКС све што треба да урадите је да одредите 424 00:25:41,680 --> 00:25:45,780 неколико параметара овде доле, и она ће вас вратити тачно оно што желите. 425 00:25:45,780 --> 00:25:50,490 Ми смо га говоре да је УРЛ желимо да идемо на ово ЦС50 Храна АПИ 426 00:25:50,490 --> 00:25:52,270 које смо добили од спец. 427 00:25:52,270 --> 00:25:56,730 Ми кажемо да желимо податке у ЈСОН и да 428 00:25:56,730 --> 00:25:59,490 идемо да га дају ове податке које смо дефинисана овде. 429 00:25:59,490 --> 00:26:02,670 Ово је дан желимо намирница за. 430 00:26:02,670 --> 00:26:07,790 И онда све што треба да урадите је да дефинишемо неку врсту успеха функције, 431 00:26:07,790 --> 00:26:11,980 што је у суштини оно што се дешава када АПИ врати те податке. 432 00:26:11,980 --> 00:26:15,490 Другим речима, ми смо се пакују све параметре које желимо, 433 00:26:15,490 --> 00:26:20,530 који је у овом случају је дан који смо то желе и чињеница да смо га желимо у ЈСОН, 434 00:26:20,530 --> 00:26:23,840 и ми смо га послали на АПИ, тако да сада АПИ каже, ок, 435 00:26:23,840 --> 00:26:26,350 Овде се ваши подаци, добио сам га назад за вас. 436 00:26:26,350 --> 00:26:29,930 Имамо успех функцију, што значи с обзиром да АПИ 437 00:26:29,930 --> 00:26:32,230 успешно враћа неке податке, шта да радимо са њим? 438 00:26:32,230 --> 00:26:35,980 >> И испоставило се да је све што радимо је ово зовем исправка мени функција 439 00:26:35,980 --> 00:26:42,680 са било којим АПИ је вратио, тако да можемо тражити да 440 00:26:42,680 --> 00:26:47,970 и видети да је све што радимо овде користи гомилу нових синтаксе 441 00:26:47,970 --> 00:26:52,220 да ажурирате ХТМЛ и убаците ове нове податке. 442 00:26:52,220 --> 00:26:56,580 Шта ово омогућава је да имамо ове стрелице на обе стране, и ми можемо да кликнете, 443 00:26:56,580 --> 00:27:01,060 и сада гледамо податке за наредни дан и опет за следећи дан, 444 00:27:01,060 --> 00:27:04,820 и сваки пут када се ажурира тај датум вредност и упита АПИ, 445 00:27:04,820 --> 00:27:07,510 вратим неке податке и стављајући га у месту. 446 00:27:07,510 --> 00:27:10,590 Опет, можете да видите, супер, супер корисно. 447 00:27:10,590 --> 00:27:14,410 Ова апликација ми је неколико сати да заједно пијук, 448 00:27:14,410 --> 00:27:20,140 и ја имам мало више искуства, очигледно, али ваше ЦС50 коначан пројекат 449 00:27:20,140 --> 00:27:22,870 Можете погледати нешто веома слично овоме. 450 00:27:22,870 --> 00:27:29,540 >> АПИ су супер моћан у износу од напора да се узимају. 451 00:27:29,540 --> 00:27:32,800 Последња ствар коју ћу да идем преко је широко још неколико АПИ. 452 00:27:32,800 --> 00:27:35,480 Нећу се колико у њима колико шта конкретно раде, 453 00:27:35,480 --> 00:27:38,740 али ћу вам дати идеју о томе шта је тамо. 454 00:27:38,740 --> 00:27:42,700 2 заиста корисни моји, ако сте заинтересовани за анализу података и визуелизацију 455 00:27:42,700 --> 00:27:45,960 или нешто слично, су Фреебасе и Википедиа. 456 00:27:45,960 --> 00:27:49,800 Википедиа-вероватно сви знате, је бесплатан онлајн енциклопедија, 457 00:27:49,800 --> 00:27:53,230 и то је заправо има АПИ, тако да ако желите да, на пример, 458 00:27:53,230 --> 00:27:56,250 добити све текстове и чланке за хоботнице 459 00:27:56,250 --> 00:27:58,030 можете врло лако урадити. 460 00:27:58,030 --> 00:28:02,300 Само реци хеј, Википедиа АПИ, ја бих податке враћене јер, 461 00:28:02,300 --> 00:28:07,010 и ја бих то у овом формату, и члан бих је хоботница, 462 00:28:07,010 --> 00:28:09,820 и веома брзо ће вас вратити ту информацију. 463 00:28:09,820 --> 00:28:12,230 То може бити заиста корисно ако желите да направите неку врсту сајта 464 00:28:12,230 --> 00:28:16,200 То је боље за Википедију гледалац или нешто слично томе. 465 00:28:16,200 --> 00:28:21,350 >> Фреебасе је некако слично, иако је мало теже колико АПИ. 466 00:28:21,350 --> 00:28:24,390 Фреебасе је као Википедијом да је онлајн енциклопедија 467 00:28:24,390 --> 00:28:29,050 који садржи пуно и пуно различитих података о свим врстама различитих тема, 468 00:28:29,050 --> 00:28:33,150 али је ускладиштена у релационој бази података, што је незнатно разликује од Википедије. 469 00:28:33,150 --> 00:28:36,410 Википедиа има своје текстове и чланке везане за друге чланке, 470 00:28:36,410 --> 00:28:38,860 али највећим делом, ако желите податке за хоботнице, 471 00:28:38,860 --> 00:28:41,990 одете у хоботница члана, добити те податке, а имате гомилу текста 472 00:28:41,990 --> 00:28:43,830 око хоботнице, тако да је то супер. 473 00:28:43,830 --> 00:28:46,870 Фреебасе ради у мало компликованије начин у томе 474 00:28:46,870 --> 00:28:48,930 све се односи на један други. 475 00:28:48,930 --> 00:28:52,620 Другим речима, ако смо у потрази за хоботнице 476 00:28:52,620 --> 00:28:54,940 онда она има гомилу категорија у вези са њим. 477 00:28:54,940 --> 00:28:57,920 >> На пример, то је животиња, она живи под водом, 478 00:28:57,920 --> 00:28:59,710 она има одређену телесну температуру. 479 00:28:59,710 --> 00:29:01,210 Не знам. 480 00:29:01,210 --> 00:29:04,230 И све ове категорије су линкови ка другим местима где можете отићи 481 00:29:04,230 --> 00:29:06,640 да видим ствари са том истом категорији. 482 00:29:06,640 --> 00:29:13,450 Другим речима, подаци хоботница скуп ће садржати линк ка скуп података за све животиње, 483 00:29:13,450 --> 00:29:16,790 и да ће дозволите ми кретати у бази стварно брзо. 484 00:29:16,790 --> 00:29:21,740 Ово може бити веома корисно ако радите нешто попут поређења. 485 00:29:21,740 --> 00:29:24,490 Другим речима, с обзиром на извесна ствар, желите да видите 486 00:29:24,490 --> 00:29:27,890 шта је то у вези са и видети шта то није у вези са. 487 00:29:27,890 --> 00:29:30,700 Та врста ствари. То може бити корисно на више начина. 488 00:29:30,700 --> 00:29:34,250 Ако сте у потрази за више изазов и да буде у стању да уради неке сложеније ствари 489 00:29:34,250 --> 00:29:38,740 Ја бих размотрити узимајући поглед на Фреебасе АПИ. 490 00:29:38,740 --> 00:29:44,670 Али углавном, Википедиа је врло једноставан место за ићи толико далеко као и добијање информација. 491 00:29:44,670 --> 00:29:48,340 Друго место које ћу погледати је Ласт.фм, а ја заправо идем на сајт 492 00:29:48,340 --> 00:29:53,800 у случају да неки људи нису упознати, али Ласт.фм је у основи музички 493 00:29:53,800 --> 00:29:57,220 укуси и препоруке вебсите. 494 00:29:57,220 --> 00:29:59,000 Можете направити налог. 495 00:29:59,000 --> 00:30:04,250 Можете почети музику уплоад са вашег музичког плејера 496 00:30:04,250 --> 00:30:08,020 на сајту, ау основи ће почети да вам музичке препоруке 497 00:30:08,020 --> 00:30:10,030 на основу онога што слушате. 498 00:30:10,030 --> 00:30:14,270 >> На пример, ако одете на свој профил страна-ово је моје, 499 00:30:14,270 --> 00:30:18,180 можете видети имате списак недавно слушао нумере. 500 00:30:18,180 --> 00:30:22,550 Можете видети укупне омиљене уметнике, све те такве ствари, 501 00:30:22,550 --> 00:30:25,280 и опет, постоји велика АПИ иза Ласт.фм, 502 00:30:25,280 --> 00:30:29,360  и можете га користити да много, много заиста сјајних ствари. 503 00:30:29,360 --> 00:30:38,870 На пример, ја ћу отићи на страницу пријатеља који има овај Ласт.фм алатке сајт. 504 00:30:38,870 --> 00:30:42,380 Ово је заправо још једна платформа која је изграђена на Ласт.фм АПИ, 505 00:30:42,380 --> 00:30:45,420 и то чини низ лепих занимљивих ствари. 506 00:30:45,420 --> 00:30:50,260 Ако сам се пријавим са мојим корисничким именом, на пример, 507 00:30:50,260 --> 00:30:53,110 Ја могу да га замолим да генерише облак ознаке, на пример, 508 00:30:53,110 --> 00:30:56,480 и шта да се дешава да урадите је да ми врати слику 509 00:30:56,480 --> 00:30:59,850 сви различити жанрови и такве ствари које волим да слушам. 510 00:30:59,850 --> 00:31:01,410 Како се ово ради? 511 00:31:01,410 --> 00:31:05,670 Врло основи то говори да Ласт.фм АПИ ево овај корисник. 512 00:31:05,670 --> 00:31:10,710 Волео бих да знам жанр свакој песми да су икада слушали, 513 00:31:10,710 --> 00:31:15,130 и то можете да урадите тако што је прилично једноставан АЈАКС позив Ласт.фм АПИ. 514 00:31:15,130 --> 00:31:18,990 Добићеш назад велики списак, а онда је очигледно неке друге ствари се врши 515 00:31:18,990 --> 00:31:22,280 претворити га у речи облак, али можете видети укупан 516 00:31:22,280 --> 00:31:25,850 то је врло лако да приступе и веома једноставан за коришћење. 517 00:31:25,850 --> 00:31:30,750 Стварно лепо за неколико ствари. 518 00:31:30,750 --> 00:31:35,940 >> Мислим да је то отприлике све што ћу рећи укупно. 519 00:31:35,940 --> 00:31:39,040 И последња ствар коју ћу споменути о АПИ уопште да 520 00:31:39,040 --> 00:31:41,840 понекад ћете налетети на нешто што се зове стопа ограничење, 521 00:31:41,840 --> 00:31:44,940 и идеја стопа ограничавања је да не желе да злоупотребе АПИ. 522 00:31:44,940 --> 00:31:48,130 Другим речима, то је стварно лепо да многи од ових сајтова има АПИ 523 00:31:48,130 --> 00:31:51,070 које можете отићи и користити бесплатно. 524 00:31:51,070 --> 00:31:54,460 Међутим, ако правите милионе или милијарде захтева дневно, 525 00:31:54,460 --> 00:31:57,610 На пример, ако сте заглављени у бесконачну петљу која се бесконачно упућеног 526 00:31:57,610 --> 00:32:00,680 нека АПИ и вратимо огромну количину података, 527 00:32:00,680 --> 00:32:04,570 очигледно да то није добро, па шта много АПИ урадите је да ова стопа ограничавање функцију 528 00:32:04,570 --> 00:32:09,970 који каже да само може направити 1.000 захтева дневно по ИП адреси или нешто слично томе. 529 00:32:09,970 --> 00:32:12,540 А ако радите пуно тестирања и такве ствари, 530 00:32:12,540 --> 00:32:14,890 понекад ћете упасти у то, и одједном ће вас искључити 531 00:32:14,890 --> 00:32:18,280 и кажу не, нећу ти дати било више података. 532 00:32:18,280 --> 00:32:20,000 >> Шта желите да урадите је да играју по правилима. 533 00:32:20,000 --> 00:32:22,950 Ви желите да се уверите да сте прочитали АПИ спецификације пажљиво. 534 00:32:22,950 --> 00:32:26,330 Ако има одређена правила везан за њега, као што си ти може само да Кс упита дневно 535 00:32:26,330 --> 00:32:30,000 или можете само приступити део базе података одређени број пута 536 00:32:30,000 --> 00:32:32,900 или нешто слично да желите да будете сигурни да се држимо тога. 537 00:32:32,900 --> 00:32:38,360 Докле год играте у оквиру тих правила, вероватно ћете имати заиста лепо време користећи АПИ. 538 00:32:38,360 --> 00:32:42,030 Ваша укупна ПОНЕТИ је АПИ су стварно корисно. 539 00:32:42,030 --> 00:32:45,610 >> Има АПИ за скоро сваку велику веб сервис тамо. 540 00:32:45,610 --> 00:32:50,700 Прилично је било који део Гоогле Алатке Суите, Гоогле Мапс, Гоогле Еартх, 541 00:32:50,700 --> 00:32:54,390 Гмаил, Гоогле Цалендар, све те ствари имају АПИ. 542 00:32:54,390 --> 00:32:58,280 Можете их користити за оба добили податке са сервера и шаље податке на сервер. 543 00:32:58,280 --> 00:33:00,870 Другим речима, ако сте желели да направите апликацију календара који се ажурирају 544 00:33:00,870 --> 00:33:04,190 Гоогле Цалендар нечији, ту је АПИ за то. 545 00:33:04,190 --> 00:33:07,810 Ако желите да се нешто што се дешава да вам кажем где 546 00:33:07,810 --> 00:33:12,530 локацију одређене адресе је можете користити Гоогле Мапс АПИ за то. 547 00:33:12,530 --> 00:33:15,860 АПИ су фантастично корисни, и они су свуда. 548 00:33:15,860 --> 00:33:18,700 Уколико сте заинтересовани за неку врсту идеје, 549 00:33:18,700 --> 00:33:22,170 Вероватно постоји сродних АПИ који можете да користите да бисте добили пуно података 550 00:33:22,170 --> 00:33:25,060 веома брзо и веома једноставно. 551 00:33:25,060 --> 00:33:28,140 >> Ако још увек тражите пројекат или ако само желите да играте 552 00:33:28,140 --> 00:33:31,820 нечим у целини, АПИ су дефинитивно вредно раде. 553 00:33:31,820 --> 00:33:37,200 Хвала, и ја сам радо одговорити на сва питања која сте ви можда имате. 554 00:33:37,200 --> 00:33:44,900 Ок, хвала пуно. 555 00:33:44,900 --> 00:33:48,000 [ЦС50.ТВ]