Използване и свързване на API на платформата beseller. API: какво е, как да работите и да настроите типове API за интеграция

API(Английски) Интерфейс за програмиране на приложения) - това е интерфейс за програмиране на приложения. API на конкретно приложение или услуга предоставя набор от готови процедури, функции и променливи, които разработчиците на трети страни могат да използват, за да създават свои собствени приложения и скриптове за работа с тази услуга.

При работа през API приложението изпраща заявка до услугата и получава отговор, съдържащ исканите данни, независимо от езика за програмиране, на който са създадени.

Собствениците на онлайн магазини, използващи услуги на трети страни и свои собствени приложения, имат възможност за достъп чрез API до:

Информация за направените поръчки

Достъпни действия (методи) за обработка на информация за поръчки:

  1. Избор на информация за поръчка по ID
  2. Избор на информация за поръчки чрез филтър
  3. Брой поръчки по филтър
  4. Създайте поръчка
  5. Изтриване на поръчка
  6. Групово изтриване на поръчки
  7. Избиране на всички налични статуси за поръчки
  8. Актуализация на състоянието на поръчката
  9. Добавяне на коментар към поръчка

Информация за абоната

  1. Добавяне на абонат
  2. Изтриване на абонат
  3. Масово премахване на абонати
  4. Избор на абонатни данни чрез филтър
  5. Брой абонати по филтър

Информация за регистрирани потребители

Налични действия (методи) за обработка на информация за абонати:

  1. Избор на информация за регистрирани потребители по ID
  2. Избор на информация за всички регистрирани потребители
  3. Избор на информация за всички данни, посочени от потребителя по време на регистрацията:

Забележка!При регистрация потребителят може да не попълни всички горепосочени полета.

Планове за развитие на API

В близко бъдеще планираме да отворим интерфейси, които да поддържат взаимодействието на магазините с приложения на трети странии услуги за работа с:

  1. секции на директория.
  2. Стоки.
  3. кошница.
  4. Отстъпки.
  5. Методи за доставка.
  6. Начини за плащане.

За тестване на взаимодействието с API на платформата beseller е създаден тестов магазин beseller-api.shop.by.

За достъп до тестовия магазин трябва да посочите потребителско име и парола. Можете да ги получите при заявка от вашия личен мениджър.

Преди да тествате API взаимодействия, ви препоръчваме да:

  1. направете няколко поръчки сами;
  2. абонирайте се за бюлетина;
  3. вижте как информацията за направените поръчки и абонатите се показва в административния панел на магазина.

Контролният панел на магазина е достъпен на: beseller-api.shop.by/manager/ . Входът и паролата при влизане в контролния панел са подобни на данните за вход и парола за достъп до магазина.

Как да се свържете чрез API с вашия магазин?

За да свържете приложението с вашия магазин, трябва да посочите url адреса за достъп до API на формата:

http://адресът на вашия_сайт:8082/graphql?token=вашият_личен_таен_ключ

Можете да получите секретния ключ при поискване от вашия личен мениджър.

Функции и променливи на GraphQL за работа с API на beseller платформата

Как да се свържете с API с помощта на езика за програмиране PHP

За удобство при работа с API на платформата beseller можете да използвате:

  1. Класове, разработени от нас под PHP.
    1. GraphqlClient- приема и предава данни към сървъра;
    2. GraphQlHelper- съдържа внедрен API за заявки и мутации;
  2. Примери за използване на класове за извършване на селекции и промени в базата данни на онлайн магазин.

Настройка на местната среда

За да демонстрирате визуално изпращането на заявки към API и получените отговори, можете да използвате локалната среда.

GraphiQL Feen се използва като локална среда, това е разширение на браузъра Google Chromeкоето ви позволява да генерирате заявки към API.

След като инсталирате приложението, икона на приложението ще се появи в браузъра ви близо до адресната лента.

Отворете приложението GraphiQL Feen и отидете на раздела „СЪРВЪРИ“, изберете метода за изпращане POST и след това посочете URL адреса за достъп до API.

Следният адрес трябва да се използва като тестов url:

Локалната среда е конфигурирана, можете да генерирате заявки към API. За да направите това, отворете раздела "ЗАЯВКИ".

Формиране на заявка към beseller API чрез GraphiQL Feen и получения отговор

Обяснение на екранна снимка:

  1. Запазени заявки
  2. Поле за въвеждане на заявки
  3. Поле за въвеждане на променливи
  4. Получен отговор
  5. бутон за стартиране

Пример за заявка за получаване на списък с изпълнени поръчки за определен период от време

заявка ($first:Int, $offset:Int, $filter: OrdersFilterType)(
поръчки (първо: $първо, отместване: $отместване, филтър: $филтър)(
коментар
статус(
документ за самоличност
описание
име
}
дата_на_създаване
дата_на_актуализация
обща сума(
наставка
стойност
}
плащане (
име
описание
цена (
наставка
стойност
}
}
доставка (
име
описание
цена (
наставка
стойност
}
}
валути (
банков код
курс
наставка
}
потребителски данни(
име
описание
стойност
}
}
}

Задаване на времеви интервал за извличане на данни за изпълнени поръчки

{
"филтър" :(
"date_after": "2017-11-16T00:00:01Z",
"date_before": "2017-11-23T00:00:01Z"
}
}

Пример за отговор на API

{{
"данни" :(
"поръчки": [
{
"comment": "Culpa officiis velut.",
"create_date": "2017-11-22 16:23:28",
"валути": [
{
"bank_code": "BYN",
курс: 10000
"наставка": "търкане"
}
],
"доставка" :(
"цена": [
{
"наставка": "търкайте",
стойност: 0
}
],
"description": "Куриер",
"име": "по избор"
},
плащане: (
"цена": [
{
"наставка": "търкайте",
стойност: 0
}
],
"description": "Пластмасови карти",
"име": "по избор"
},
състояние: (
"описание": "Ново",
"id": 1,
"име": "ново"
},
"обща сума": [
{
"наставка": "търкайте",
стойност: 4450
}
],
"актуализация": "2017-11-22 16:23:28",
"потребителски данни": [
{
"description": "Имейл адрес",
"име": "имейл",
"стойност": " [имейл защитен]"
},
{
"description": "Телефон",
"име": "телефон",
"стойност": "784.392.3949x69329"
},
{
"description": "Адрес",
"име": "регистрация",
"стойност": "607 Erik Station Suite 057\nReynaberg, WY 83542-0037"
},
{
"description": "Коментар",
"име": "коментар",
"value": "Id name illo optio."
},
{
"description": "Име",
"име": "фио",
"стойност": "Jordi Mann MD"
}
]
}

Трябва също така да се отбележи, че програмистът често има няколко различни API на свое разположение, за да постигне същия резултат. В този случай всеки API обикновено се реализира с помощта на API на софтуерни компоненти с по-ниско ниво на абстракция.

Например: за да видите реда "Hello, world!" всичко, което трябва да направите, е да създадете HTML документ с минимално заглавие и просто тяло, съдържащо дадения низ. Какво се случва, когато браузърът отвори този документ? Програмата на браузъра ще предаде името на файла (или вече отворен файлов дескриптор) на библиотеката, която обработва HTML документи, която от своя страна, използвайки API на операционната система, ще прочете този файл и ще разбере неговото устройство, ще извика операции като „изчисти прозорецът”, „пишете с избрания шрифт Здравей, свят!”, по време на тези операции графичната примитивна библиотека ще се обърне към библиотеката на интерфейса на прозореца със съответните заявки, тази библиотека вече ще се обърне към API на операционната система със заявки като „ постави ме в буфера на видеокартата това".

В същото време всъщност има няколко възможни алтернативни API на почти всяко ниво. Например: можем да напишем изходния документ не в HTML, а в LaTeX, можем да използваме всеки браузър за показване. Различните браузъри обикновено използват различни HTML библиотеки и освен това всичко това може да бъде (като цяло) компилирано с помощта на различни примитивни библиотеки и на различни операционна системао

Ето защо основните сложности на съществуващите многослойни API системи са:

  • Трудност при пренасяне програмен кодот една API система към друга (например при смяна на ОС);
  • Загуба на функционалност при преминаване от по-ниско ниво към по-високо. Грубо казано, всеки "слой" на API е създаден, за да улесни изпълнението на някакъв стандартен набор от операции. Но в същото време наистина става трудно или става фундаментално невъзможно да се изпълняват някои други операции, които предоставя по-ниско ниво на API.

Основни типове API

  • Достъпът до API е ограничен до вътрешни разработчици
  • Приложенията са насочени към служителите на предприятието

Бизнес двигатели:

  • Последователност на развитието
  • Намаляване на разходите
  • Подобряване на ефективността на разработката

Партньорски API

  • Налични са само API ограничен наборбизнес партньори
  • Приложения, предназначени за крайни потребители и бизнес потребители

Бизнес двигатели:

  • Автоматизация на процеса на разработка
  • Развитие на партньорства
  • Оптимизиране на процеса на взаимодействие с партньорите

Публични API

Достъпът се предоставя на всеки външен разработчик. Приложенията са насочени към крайните потребители

Бизнес двигатели:

  • Разработване на нови услуги
  • Развитие на екосистемата
  • Многоканално взаимодействие

Най-известните API

API на операционната система

GUI API

  • Direct3D (част от DirectX)
  • DirectDraw (част от DirectX)

Звукови API

  • DirectSound (част от DirectX)
  • DirectMusic (част от DirectX)

API за удостоверяване

Принцип и използване на API Economy

  • Работата на API трябва да има измерима стойност. Не хабете ресурси за изграждане на API, който никой друг разработчик няма да използва.
  • Създайте API само ако ще има конкретен потребител. Трябва да има партньор или екосистема, която се нуждае от това.
  • Средното предприятие винаги използва повече API, отколкото създава самостоятелно. Неговите отдели ще се занимават с много API и зависи от CIO да управлява това.
  • Приложните програмни интерфейси (API) са критични за интернет на нещата, изживяването на крайния потребител, анализите и информационни системи. Ако забравяте тези неща, когато създавате API, помислете два пъти.

API позволяват на организациите да създават персонализирани потребителски изживявания

Очакванията и поведението на купувачите се променят

купувачи:

  • Изисквайте персонализиран подход – според техните условия
  • Очаквайте цялостна интегрирана услуга
  • Предава се на всеки, който най-добре отговаря на техните изисквания

организации:

  • Взаимодействайте с клиенти чрез интерактивни уебсайтове, създадени за тази цел мобилни приложенияи други удобни цифрови интерфейси
  • Очаквайте цялостна интегрирана услуга
  • Ще отиде при този, който най-добре отговаря на техните изисквания

API навсякъде!

Хронология на събитията

2019

Проучване на TAdviser съвместно с PJSC VTB Bank с участието на Сколково: Трансформацията на API започва в банковия сектор на Русия

Централната банка покани около 20 банки да участват в отворения пилотен API

На 21 август 2019 г. стана известно, че Банката на Русия действа като координатор на пилотен проект в областта на отворените API (интерфейси за програмиране на приложения) за интегриране на банкови услуги в рамките на Евразийския икономически съюз (ЕАЕС). Към момента на публикуване на материала Централната банка, съвместно с централните банки на страните от ЕАЕС, работи по подготовката на пилотен проект за внедряване. Това казаха на "Комерсант" банкери, получили оферта от Централната банка. Общо около 20 кредитни институции са получили писмо от регулатора, който трябва да отговори за готовността си за участие до 23 август. Прочетете още.

Индустрията на ценните книжа е готова за API

На 2 август 2019 г. стана известно, че съвместно проучване на SWIFT и BCG разкрива увеличаване на използването на API на фона на желанието на компаниите да подобрят ефективността и да предлагат услуги.

Сектор на пазарните услуги ценни книжаблизо до повратна точка в приемането на интерфейси за програмиране на приложения (API), тъй като фирмите се стремят да подобрят ефективността и да възприемат модерни бизнес модели.

Информираността за API сред мениджърите на активи се е увеличила с 26% само през 2018 г. (от 46% на 72%), според проучване на BCG. Нарастващият търговски интерес води до пилотни схеми и сценарии за прилагане, особено между управляващи компании и техните попечители.

API могат да помогнат на индустрията за ценни книжа да се справи с многото и разнообразни видове активи, сложния обмен на информация и нарастващия натиск върху таксите. Докладът подчертава четири области, в които API могат да бъдат от полза за цялата индустрия:

  • Ефективност и спестяване на разходи чрез автоматизиран обмен на данни
  • Достъп до информация в реално време, като състояние на сетълмент и риск в рамките на деня
  • Допълнителни услуги: Обогатени данни и анализи
  • Оперативни показатели, които позволяват на доставчиците на услуги да сравняват ефективността между участниците на пазара

В сектора на ценните книжа, приемането на API е по-бавно, отколкото в други индустрии на финансовите услуги, което се дължи отчасти на липсата на регулаторна рамка и липсата на последователност в желанието на участниците на пазара да приемат API. Компаниите за управление на активи се различават значително по своето техническо оборудване и отвореност за взаимодействие с доставчици чрез API. Около 56% от респондентите в проучването на BCG смятат, че нивото на приемане на API след търговията е „експериментално“, докато само 21% казват, че е „високо“ или „средно“.

API може да бъде мощен двигател на иновациите в пост-търговията, както беше в платежната индустрия и други области на банкирането. Интересът към тази технология расте, а първите резултати от експериментите изглеждат обещаващи. Но за да стимулираме наистина и да ускорим широкото приемане на API, трябва да премахнем несигурността на стандартите и да подобрим разбирането за зрелостта на технологиите.

Juliet Kennel, ръководител на отдела за ценни книжа и валутни пазари в SWIFT отбеляза


Докладът дава четири причини, поради които индустрията трябва да внедри API:

  • Взаимодействие в рамките на обща инфраструктура. Основни елементи на API решения като идентичност, удостоверяване, сигурност и управление интернет връзка, трябва да се договори на ниво индустрия, а не между отделни фирми.
  • Координиране на API стандарти за поддържане на съвместимост. Разпространението на много стандарти може да намали ефективността на използването на API. Индустрията се нуждае от единен API стандарт, който да работи при всички доставчици.
  • Поддръжка за мрежови API, а не за p2p решения. Фирмите могат да се възползват от мрежовите API: например, едно обаждане за проверка на състоянието на сетълмент от брокер-дилър може да бъде изпратено до множество попечители едновременно. Уеб решението ще поддържа конвергенция както за обяснение на данни, така и за други характеристики на API.
  • Отговаря на строги стандарти за безопасност и устойчивост.За успешно развитие всяко API решение трябва да има високо нивозащита на данните и устойчивост.
API се превърна в една от ключовите технологии в дигиталната трансформация на целия банков сектор. Сега API си проправя път в сектора на услугите за ценни книжа и се превръща във водеща технология сред компаниите, които искат да преминат към цифрови услуги. Въпреки съществуващите трудности за приемането на API по отношение на оперативната съвместимост и сигурността, ние вярваме, че те ще бъдат преодолени и очакваме с нетърпение по-нататъшното внедряване на технологията в близко бъдеще,

каза Сумитра Картикеян, ръководител услуги за ценни книжа в BCG


Въвеждането на API на пазара на ценни книжа, базиран на SWIFT, може да постигне такива ключови цели като намаляване на разходите и създаване на допълнителни бизнес възможности за участниците на пазара и особено за управляващите компании и крайните инвеститори. Поради това NSD проучва използването на отворени API и активно си сътрудничи със SWIFT за стандартизирането на API технологията и практическото използване на тази технология в глобалната пост-търговия,отворена банкова платформа Tink декларира, че Вижте също

API е външен интерфейс за програмиране на приложение, достъп до сайтове, използвайки специфичен протокол за получаване на информация и опростяване на разработването на програми, свързани с вътрешни услуги.

Какво означава API

Най-простата аналогия за използване на API би бил процесът на работа върху калкулатор за сложни изчисления. Да приемем, че имате задача, можете да разберете нейната същност, да съставите уравнения и графики, но не знаете как да извършвате аритметични операции с числа. До вас има калкулатор, който може да извършва тези операции с лекота. Не знаеш какво става вътре компютърДа, и не е нужно да знаете. Давате информация под една форма, а я получавате под друга, необходима за вашите цели.

Всеки API работи на този принцип. Не ви интересува как програмата получава отговора, какъв път минава заявката вътре в нея, как се правят изчисленията. Вие сте сигурни само в едно нещо - в отговор ще бъде издадена стандартизирана информация за успеха на операцията или нейната грешка.

API интерфейсът ви позволява да не губите време, пари и усилия за закупуване на „нов велосипед“. Получавате работещ информационен порт, който приема и изпраща необходимите количества данни за целите на вашето развитие.

Професионалисти:

  • Спестявания при разработването на вашия интерфейс.
  • Няма нужда да разбирате нюансите на въпроса.
  • API са разработени от професионалисти и вземат предвид всички фактори на вътрешните процеси, за които може да не знаете, когато създавате вашето решение.
  • Позволява ви да комуникирате със затворени услуги чрез други протоколи.

минуси:

  • В случай на актуализиране на целевата услуга, API не винаги получава незабавно пълна функционалност.
  • Не можете да улавяте грешки и не знаете как протича процесът в кода на някой друг.
  • Приложният програмен интерфейс (API) не винаги дава най-оптимизирания за време резултат, тъй като е проектиран да обработва общи случаи, а не частни.

API примери

API интеграцията е процес на свързване на приложение към външен интерфейсданни. Работата с API започва с изучаване на документацията и използваните протоколи и след това директно интегриране на вашата програма в интерфейса. Помислете за най-популярните услуги, които имат собствен API.

VKAPI

Външният интерфейс за взаимодействие на популярната социална мрежа VKontakte с клиенти, както и с браузърни и сървърни приложения. Позволява ви да управлявате съобщения в общността, корици на групи, потребителски страници, ако имате подходящите ключове за достъп.

Всички заявки се правят на адрес https://api.vk.com/method/

Наклонената черта е последвана от името на използвания API метод и се предават параметрите на GET заявката. Отговорът също идва чрез HTTPS във формат JSON.

TELEGRAM BOT API

Един от най-популярните API. С негова помощ се управляват ботове в месинджъра на Telegram. След като създадете бот чрез @botfather и получите необходимите ключове за достъп, можете да започнете да взаимодействате с бекенда.

Заявките се отправят към https://api.telegram.org/bot0000000:token/

Където bot0000000 се заменя с уникалния идентификатор на вашия бот, а токенът изразява секретния ключ.

Заявките се изпращат чрез HTTPS връзки, името на метода се посочва чрез наклонена черта към главния адрес. Отговорът идва във формат JSON.

ОТВОРЕТЕ API НА КАРТАТА НА ВРЕМЕТО

Често е необходимо да получите информация за времето, без да използвате джаджи на трети страни и платени приложения. Услугата OpenWeatherMap идва на помощ с отворен и безплатен API. След като се регистрирате и получите идентификационни данни, можете да изпращате заявки за времето по целия свят от сървърни скриптове. В отговор на идентификатора на града ресурсът връща максимума подробна информацияза текущото време и дава прогноза за близко бъдеще.

Формат на работа: HTTP трансфер чрез api.openweathermap.org/data/2.5/weather?id= с посочване на идентификационния номер на желания град. Отговор на сървъра: JSON.

API на Google Maps

Какво може да бъде по-хубаво от интерактивна карта на света на сайта? Особено ако това не е вмъкване на шаблон от Google Maps, а вашето лично издание на популярна карта с персонални клъстери от маркери. Картата ще взаимодейства с други скриптове на сайта, изпращайки информация за кликвания и координати.

Google Maps JavaScript API предлага подобни възможности. Модулът е изцяло скриптиран и работи от страна на браузъра, така че нямаме нужда от HTTP заявки от PHP и формиране на хедъри от страна на сървъра, както беше в други API.

Например поставянето на маркер върху карта ще изглежда така:

var mark = new google.maps.Marker((
позиция: myPOS,
карта:карта,
заглавие: "Здравей!"
});

Каква е употребата на API и защо е полезен

Има доста полезни функции.

Първи аспект

Възможно е да се установи интерактивно взаимодействие с потребителя социални мрежии незабавни съобщения, използвайте възможностите на трети страни изчислителни системиза показване на обменни курсове, време и друга важна информация.

С помощта на API можете незабавно да се свържете със сървърите на други ресурси и софтуерни решения, което при типична реализация би отнело седмици на разработка. API опростява живота там, където не е необходима уникална реализация, а надеждността и сигурността са приоритет.

Втори аспект

Ако сте собственик на сложна изчислителна мощност, популярна услуга или хранилище на данни за отворен или получастен достъп, тогава би било добър ход да създадете свой собствен API. Какво ще даде:

  • Голям поток от клиенти.
  • Опростен достъп до вашите услуги за партньори.
  • Удобство Статистически анализизползване на услугата.

Трети аспект

Почти същото като второто. Но без да се налага да внедрявате API за свободен достъп. Ако имате портал и искате да създадете мобилно приложение за Android/IOS за него, пренапишете системата за един API - Най-доброто решение. Цялата структура на данните е систематизирана. Сайтът и приложението ще работят през единични канали за данни.

Нека започнем с основите: какво е API? Съкращението означава Application Programming Interface или интерфейс за програмиране на приложения. Името изглежда говори само за себе си, но е по-добре да разгледаме по-подробно обяснение.

Както вече споменахме, API е преди всичко интерфейс. Интерфейс, който позволява на разработчиците да използват готови блокове за изграждане на приложение. В случай на разработване на мобилни приложения, библиотека за работа с "интелигентен дом" може да действа като API - всички нюанси са внедрени в библиотеката и вие се позовавате само на този API във вашия код.

В случай на уеб приложения, API може да върне данни във формат, различен от стандартния HTML, което го прави удобен за използване при писане на ваши собствени приложения. Публичните API на трети страни най-често връщат данни в един от двата формата: XML или JSON. В случай, че решите да направите API за вашето приложение, не забравяйте, че JSON е много по-кратък и по-лесен за четене от XML, а услугите, които предоставят достъп до данни в XML формат, постепенно премахват последния.

API в уеб приложения чрез примери

Едно приложение - например Github - има собствен API, който други разработчици могат да използват. Как ще го използват зависи от възможностите, които API предоставя и колко добре работи въображението на разработчиците. Github API позволява например да получите информация за потребителя, неговия аватар, читатели, хранилища и много друга полезна и интересна информация.

По същия начин можете да изпратите заявка на всеки език, включително Ruby. Отговорът на искането ще бъде нещо подобно:

( "login" : "Freika" , "id" : 3738638, "avatar_url" : "https://avatars.githubusercontent.com/u/3738638?v=3", "gravatar_id" : "" , "url" : "https://api.github.com/users/Freika", "html_url" : "https://github.com/Freika" , "followers_url" : "https://api.github.com/users/Freika/followers", "following_url" : "https://api.github.com/users/Freika/following(/other_user)", "gists_url": "https://api.github.com/users/Freika/gists(/gist_id)", "url_url със звезда": "https://api.github.com/users/Freika/starred(/owner)(/repo)", "subscriptions_url": "https://api.github.com/users/Freika/subscriptions", "organizations_url": "https://api.github.com/users/Freika/orgs", "repos_url": "https://api.github.com/users/Freika/repos", "events_url": "https://api.github.com/users/Freika/events(/privacy)", "received_events_url": "https://api.github.com/users/Freika/received_events", "type" : "Потребител" , "site_admin" : false , "name" : "Evgeniy" , "company" : "" , "blog" : "http://frey.su/" , "location" : " Barnaul", "email": "", "hireable": true, "bio": null, "public_repos": 39, "public_gists": 13, "followers": 15, "following": 21, "created_at": "2013-03-01T13:48:52Z" , "updated_at" : "2014-12-15T13:55:03Z")

Както можете да видите от блока по-горе, отговорът съдържа вход, аватар, връзка към профила на сайта и в API, потребителски статус, брой публични хранилища и друга полезна и интересна информация.

Един API не е достатъчен

Създаването на пълноценен API за вашето приложение е само половината от битката. Как ще получите достъп до API? Как вашите потребители ще имат достъп до него?

Първото нещо, което идва на ум, е обичайната поредица от HTTP заявки за получаване необходимата информацияи това е грешен отговор. Най-очевидният начин в този случай не е най-удобният и прост. Би било много по-разумно да се създаде специална библиотека за работа с интерфейса, която да описва всички необходими начини за получаване и изпращане на информация с помощта на API.

Още веднъж ще използваме Github, за да дадем пример: за работа с API на тази отлична услуга (а нейният интерфейс предоставя широки възможности) са създадени няколко библиотеки на различни езици, например Octokit gem. В документацията за такива библиотеки (и скъпоценния камък, даден като пример), всеки заинтересован разработчик ще може да намери всички необходими начини да получи информация от Github и да я изпрати обратно чрез API на услугата.

Така че, ако създавате свой собствен API, помислете за създаване на библиотеки за работа с него и на най-често срещаните езици. И бъдете готови, че при определено ниво на търсене на вашето приложение някой друг може да създаде своя собствена библиотека, за да работи с вашия API. Това е добре.

полезни връзки

В следващите статии ще говорим за това как правилно да създадете API, да гарантирате неговата сигурност и да ограничите достъпа до част от информацията.

Вероятно сте виждали термина "API". Актуализациите на операционната система, уеб браузъра и приложенията често обявяват нови API за разработчици. Но какво е API?

Интерфейс за програмиране на приложения

Терминът API е акроним и означава „Интерфейс за програмиране на приложения“.

API е като меню в ресторант. Менюто съдържа списък с ястия, които можете да поръчате, както и описание на всяко ястие. Когато посочите кои елементи от менюто желаете, кухнята на ресторанта се справя и ви осигурява готови ястия. Не знаете как точно се приготвя тази храна в ресторанта, а и не е нужно.

По същия начин API предоставя много операции, които разработчиците могат да използват, както и описание на това, което правят. Разработчикът не трябва да знае как например се създава операционна система и се показва диалоговият прозорец Запиши като. Те просто трябва да знаят, че е достъпно за използване в приложението.

Това не е перфектна метафора, тъй като разработчиците може да трябва да предоставят свои собствени API данни, за да получат резултати, така че може би е по-скоро луксозен ресторант, където можете да предоставите някои от вашите собствени съставки, с които кухнята ще работи.

API позволяват на разработчиците да спестят време, като се възползват от инжектирането на платформа, за да свършат важна работа. Това помага да се намали количеството код, който разработвате, и също така помага да се създаде последователност между приложенията на една и съща платформа. API могат да контролират достъпа до хардуерни и софтуерни ресурси.

API улесняват живота на разработчиците

Да приемем, че искате да разработите приложение за iPhone. Операционната система Apple iOS предоставя голям брой API, както всяка друга операционна система, за да ви улесни.

Например, ако искате да вградите уеб браузър, за да показвате една или повече уеб страници, не е необходимо да кодирате собствения си уеб браузър от нулата само за вашето приложение. Вие
Можете да използвате WKWebView API, за да вградите уеб браузър WebKit (Safari) във вашето приложение.

Ако искате да правите снимки или видеоклипове от iPhone камери, Не е необходимо да пишете свой собствен интерфейс на камерата. Можете да използвате API на камерата, за да вградите камерата на iPhone във вашето приложение. Ако API не съществуваше, разработчиците на приложения ще трябва да напишат свой собствен софтуер за камера и да интерпретират входовете хардуеркамери. Но разработчиците на операционната система на Apple са свършили цялата тежка работа, така че разработчиците могат просто да използват API на камерата, за да вградят камерата и след това да продължат да пишат своето приложение. И когато Apple подобри API на камерата, всички приложения, които го използват, автоматично ще се възползват от това подобрение.

Това важи за всички платформи. Например, искате ли да създадете диалогов прозорец в Windows? Има API за това. Искате ли да поддържате удостоверяване с пръстов отпечатък на Android? Има API за това, така че не е нужно да тествате всеки сензор за пръстови отпечатъци от всеки производител на Android. Разработчиците не трябва да преоткриват колелото отново и отново.

API контролират достъпа до ресурси

API също се използват за контролиране на достъпа до хардуерни устройства и софтуерни функции, които приложението може да няма разрешение да използва. Ето защо API често играят голяма роля в сигурността.

Например, ако някога сте посетили уебсайт и сте видели съобщение в браузъра си, че уебсайтът иска вашето точно местоположение, този уебсайт се опитва да използва API за геолокация във вашия уеб браузър. Уеб браузърите предоставят API, за да улеснят достъпа на уеб разработчиците до вашето местоположение - те могат просто да попитат „къде си?“ и браузърът върши тежката работа по достъпа до GPS или наблизо WiFi мрежиза да намерите вашето физическо местоположение.

Браузърите обаче предоставят тази информация и чрез API, тъй като достъпът до нея може да се контролира. Когато уебсайт иска достъп до точното ви местоположение, единственият начин да го получите е чрез API за местоположение. И когато уебсайт се опита да го използва, вие - потребителят - можете да изберете да разрешите или отхвърлите заявката. Достъпът до хардуерни ресурси, като например GPS сензор, е възможен само чрез API, така че браузърът може да контролира достъпа до хардуера и да ограничава приложенията.

Същият принцип се използва за съвременните мобилни операционни системи като iOS и Android, където мобилните приложения имат разрешения, които могат да бъдат реализирани чрез API контрол на достъпа. Например, ако разработчик се опита да получи достъп до камерата чрез API на камерата, можете да откажете искането за разрешение и приложението няма да може да получи достъп до камерата на вашето устройство.

Файловите системи, които използват разрешения, както в Windows, Mac и Linux, имат същите разрешения, които се прилагат от API. файлова система. Типичното приложение няма директен достъп до необработен физически твърд диск. Вместо това приложението трябва да има достъп до файловете чрез API.

API се използват за комуникация между услугите

API се използват и по други причини. Например, ако някога сте виждали Google обектКарти, вградени в уебсайт, този уебсайт използва API на Google Maps, за да вгради тази карта. Google предоставя API като тези за уеб разработчици, които след това могат да използват API за сглобяване на сложни обекти направо на уебсайта си. Ако такива API не съществуват, разработчиците може да трябва да създадат свои собствени карти и да предоставят свои собствени данни за карти, за да хостват малка интерактивна карта на уебсайт.

И тъй като това е API, Google може да контролира достъпа до Google Mapsна уебсайтове на трети страни, като се гарантира, че те го използват по последователен начин и не се опитват да вградят произволно рамка, която показва например уебсайта на Google Карти.

Това се отнася за много различни онлайн услуги. Има API за искане на превод на текст от Google Translate или показване на Facebook коментари или туитове от Twitter на уебсайт.

Стандартът OAuth също дефинира редица API, които ви позволяват да влезете в сайт чрез друга услуга, като например да използвате вашите идентификационни данни за вход. публикации във фейсбук, Google или Twitter, за да влезете в нов уебсайт, без да създавате нов сметкапотребител само за този сайт. API са стандартни договори, които определят как разработчиците взаимодействат с услугата и вида продукт, който разработчиците трябва да очакват да получат.

Ако сте прочели тази статия, тогава ще разберете по-добре какво е API. В крайна сметка не е нужно да знаете какво е API, освен ако не сте разработчик. Но ако видите това софтуерна платформаили услугата добави нови API за различен хардуер или услуги, трябва да е по-лесно за разработчиците да използват такива функции.



Зареждане...
Връх