
API дегеніміз не? Және басқа қысқартулар: REST, SOAP, XML, JSON, WSDL
Браузерді пайдаланған кезде, браузер клиент серверінен сұраулар жасайды және сервер браузер жинайтын және веб-бетті көрсететін деректерді кері жібереді. Бірақ серверіңіздің немесе веб-бетіңіздің басқа сервермен сөйлесуін қаласаңыз ше? Бұл API-ге бағдарламалауды талап етеді.
API нені білдіреді?
API - бұл қысқартылған сөз Бағдарламалық интерфейс (API). API - бұл веб-қосылатын және мобильді қосымшаларды құруға арналған процедуралар, протоколдар және құралдар жиынтығы. API аутентификацияны (міндетті емес), API серверінен деректерді сұрауды және алу жолын көрсетеді.
API дегеніміз не?
Веб-әзірлеу контекстінде пайдаланылған кезде API әдетте гипермәтінді тасымалдау протоколының анықталған жиынтығы болып табылады (HTTP) жауап хабарламаларының құрылымының анықтамасымен бірге сұрау хабарламалары. Web API интерфейстері бірнеше қызметтерді біріктіру деп аталатын жаңа қолданбаларға біріктіруге мүмкіндік береді.
Уикипедия
Қарапайым мысал келтірейік. Ұзын тарату үшін сілтеме қысқартқышты пайдалансаңыз URL сияқты қызметті пайдалана аласыз Bit.ly. Ұзын URL мекенжайын теріп, URL мекенжайын жібересіз және Bit.ly қысқа URL мекенжайымен жауап береді.
Егер сіз Bit.ly қолданбасын пайдаланып жатқан платформаның аясында пайдаланғыңыз келсе ше? Мүмкін сіз QR кодын жасаушыны желіде жасаған шығарсыз, бірақ алдымен ұзын URL мекенжайларының қысқартылуын қалайсыз. Бұл жағдайда сіз өзіңіздің сайтыңызды Bit.ly API-ге сұрау жіберуге бағдарламалай аласыз, содан кейін QR кодын құру үшін жауапты түсіре аласыз.
Процесс адамның араласуын қажет етпейтін API көмегімен автоматтандырылған. Бұл API интерфейстері әрбір ұйымға беретін мүмкіндік. API интерфейстері жүйелерге деректерді синхрондауға, сұрауларды өңдеуге және әдетте қолмен орындалатын процестерді автоматтандыруға көмектеседі.
Егер платформада сенімді API болса, бұл сіз интеграциялауға және автоматтандыруға болатыныңызды білдіреді – қолмен уақытты үнемдей аласыз, платформаларыңыздың нақты уақыттағы мүмкіндіктерін жақсарта аласыз және жақсартылған дәлдікті қамтамасыз ете аласыз – деректерді қолмен енгізу мәселелерін болдырмай.
API қалай жұмыс істейтіні туралы бейне
Егер сіз платформа әзірлеушісі болсаңыз, API интерфейстері сонымен қатар пайдаланушы интерфейсін есептеу және дерекқор сұрауларынан бөлу мүмкіндігін ұсынады. Неліктен бұл маңызды? Пайдаланушы интерфейсін дамыта отырып, сіз басқа үшінші тараптар үшін жариялаған бірдей API интерфейстерін пайдалана аласыз. Пайдаланушы интерфейсін бэк-end интеграциясын бұзу туралы алаңдамай қайта жаза аласыз.
Қолжетімді API интерфейстерін қалай табуға болады
Сіз белгілі бір өнім немесе қызмет үшін API іздеп жүрсіз бе? Мұнда жеке және коммерциялық мақсатта пайдалануға болатын API тізімдері берілген кейбір ресурстар берілген:
API интерфейстерін қалай тексеруге болады
API - браузер сияқты жай ғана HTTP сұрауы. Саралау мынада: API сұрау жасау үшін жиі аутентификация әдісін қажет етеді. Аутентификация қажет болмаса, сұраудың URL мекенжайын шолғышқа қою арқылы да сұрауға болады. Мұнда сұраудың мысалы берілген ашық бастапқы ауа райы API.
OSX көмегімен сіз пайдалана аласыз Curl терминал терезесіндегі пәрмен. Бұйрықты орындаған кезде, cURL
берілген API URL мекенжайына GET сұрауын жасайды және ауа райы болжамы деректерін қамтитын жауап Терминалда көрсетіледі.
curl "https://api.open-meteo.com/v1/forecast?latitude=52.52&longitude=13.41¤t_weather=true&hourly=temperature_2m,relativehumidity_2m,windspeed_10m"
Windows жүйесінде орнатуға болады curl
пәрмен жұмыс істеуі үшін оны жүйенің PATH жолына қосыңыз. Сонымен қатар, сіз үшінші тарапты пайдалана аласыз curl
сияқты Windows үшін орындалатын файлдар Windows жүйесіне арналған cURL or Winamp арқылы Windows үшін curl және curl пәрменін сол сияқты іске қосыңыз.
Міне, кейбір қосымша тілдер және API сұрауын қалай жасауға болады:
- Питон: The
requests
кітапхана әдетте Python тілінде HTTP сұрауларын жасау үшін пайдаланылады. Міне, мысал:
import requests
response = requests.get('https://example.com')
print(response.text)
- JavaScript (Node.js): The
axios
кітапхана — Node.js үшін кеңінен қолданылатын HTTP клиенті. Міне, мысал:
const axios = require('axios');
axios.get('https://example.com')
.then(response => {
console.log(response.data);
})
.catch(error => {
console.error(error);
});
- JQuery: пайдаланыңыз
$.ajax
or$.get
HTTP сұрауларын жасау функциялары. Мұнда GET сұрауын қолданудың мысалы келтірілген$.ajax
jQuery ішінде:
$.ajax({
url: 'https://example.com',
method: 'GET',
success: function(response) {
console.log(response);
},
error: function(error) {
console.error(error);
}
});
- Ruby: Ruby стандартты кітапханасы мыналарды қамтиды
net/http
HTTP сұрауларын жасауға арналған модуль. Міне, мысал:
require 'net/http'
require 'uri'
uri = URI.parse('https://example.com')
response = Net::HTTP.get_response(uri)
puts response.body
- Java: Java HTTP сұрауларын жасау үшін әртүрлі кітапханалар мен құрылымдарды ұсынады, мысалы
HttpURLConnection
(стандартты кітапханада), Apache HttpClient немесе OkHttp. Мұнда пайдаланудың мысалы келтірілгенHttpURLConnection
:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
public class Main {
public static void main(String[] args) throws IOException {
URL url = new URL("https://example.com");
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("GET");
BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
String line;
StringBuilder response = new StringBuilder();
while ((line = reader.readLine()) != null) {
response.append(line);
}
reader.close();
System.out.println(response.toString());
}
}
- C# немесе ASP.NET: пайдаланыңыз
HttpClient
HTTP сұрауларын жасауға арналған сынып. Мұнда GET сұрауын қолданудың мысалы берілгенHttpClient
C# тілінде:
using System;
using System.Net.Http;
using System.Threading.Tasks;
class Program
{
static async Task Main()
{
using (HttpClient client = new HttpClient())
{
HttpResponseMessage response = await client.GetAsync("https://example.com");
response.EnsureSuccessStatusCode(); // Ensure a successful response
string responseBody = await response.Content.ReadAsStringAsync();
Console.WriteLine(responseBody);
}
}
}
Қажетті қосуды ұмытпаңыз using
мәлімдемелер және олармен жұмыс істеу кезінде ерекшеліктерді сәйкес өңдеу HttpClient
ASP.NET немесе C# қолданбасында.
- WordPress: WordPress API интерфейсінің өз функциялары бар
wp_remote_get
orwp_remote_post
:
$response = wp_remote_get('https://example.com');
if (is_wp_error($response)) {
$error_message = $response->get_error_message();
echo "Request failed: $error_message";
} else {
$body = wp_remote_retrieve_body($response);
$data = json_decode($body);
// Process the retrieved data
var_dump($data);
}
Бұл мысалдар негізгі GET сұрауын орындау жолын көрсетеді, бірақ бұл кітапханалар әдетте әртүрлі HTTP әдістерін (GET, POST, т.б.) қолдайды және тақырыптарды орнатуға, сұраудың пайдалы жүктемелерін жіберуге және жауаптарды жетілдірілген тәсілмен өңдеуге арналған опцияларды қамтамасыз етеді.
Код мысалдарын іске қоспас бұрын бағдарламалау тілі үшін кез келген қажетті тәуелділіктерді немесе кітапханаларды орнатуды ұмытпаңыз.
Talend-те API интерфейстерімен әрекеттесу және олардың жауаптарын көруге арналған тамаша Chrome қолданбасы бар, егер сіз API интерфейстерін код жолын жазбай сынағыңыз келсе.
Chrome браузеріне Talend's API Tester қосыңыз
SDK аббревиатурасы нені білдіреді?
SDK - бұл аббревиатура Бағдарламалық жасақтама жиынтығы.
Компания өзінің API нұсқасын жариялағанда, әдетте API түпнұсқалық растамасын, оны қалай сұрауға болатынын және сәйкес жауаптарды көрсететін ілеспе құжаттама болады. Әзірлеушілерге жұмысты бастауға көмектесу үшін компаниялар бағдарламалық жасақтаманы әзірлеушілер жинағын жиі шығарады (SDK) әзірлеуші жазатын жобаларға сыныпты немесе қажетті функцияларды оңай қосу үшін.
XML қысқартылған сөзі нені білдіреді?
XML - бұл қысқартылған сөз кеңейтілетін белгілеу тілі. XML — адам оқи алатын және машина оқи алатын пішімдегі деректерді кодтау үшін қолданылатын белгілеу тілі.
Мұнда XML пайда болуының мысалы келтірілген:
<?xml нұсқа =«1.0»?> <product id =«1»> Өнім A Бірінші өнім 5.00 әрбір
JSON аббревиатурасы нені білдіреді?
JSON - бұл қысқартылған сөз JavaScript нысанының белгісі. JSON API арқылы алға-артқа жіберілетін деректерді құрылымдауға арналған пішім. JSON - XML-ге балама. REST API интерфейстері көбінесе JSON-пен жауап береді – атрибут-мән жұптарынан тұратын деректер нысандарын жіберу үшін адам оқи алатын мәтінді пайдаланатын ашық стандартты пішім.
Жоғарыда келтірілген деректерге мысал JSON көмегімен:
{ «id»: 1, «Title»: «А өнімі», «сипаттама»: «Бірінші өнім», «баға»: { «сома»: «5.00», «per»: «әрқайсысы» } }
REST аббревиатурасы нені білдіреді?
REST дегеннің аббревиатурасы болып табылады Мемлекеттік өкілдіктің трансферті таратылған гипермедиялық жүйелерге арналған архитектуралық стиль.
Ой! Терең дем! Толығымен оқи аласыз диссертацияАқпараттық және компьютерлік ғылымдардағы философия докторы дәрежесіне қойылатын талаптардың ішінара қанағаттандырылған архитектуралық стильдер және желілік бағдарламалық жасақтаманың дизайны деп аталады. Рой Томас Филдинг.
Рахмет, доктор Филдинг!
SOAP аббревиатурасы нені білдіреді?
SOAP деген қысқартылған сөз болып табылады Қарапайым объектіге қол жеткізу хаттамасы
Мен бағдарламашы емеспін, бірақ менің ойымша, SOAP-ды жақсы көретін әзірлеушілер мұны оқиды стандартты бағдарламалау интерфейсінде кодты оңай жасай алады. Web Service Definition Language (WSDL) файл. Оларға жауапты талдаудың қажеті жоқ, ол қазірдің өзінде WSDL арқылы орындалды. SOAP хабарлама құрылымын және оны өңдеу жолын анықтайтын бағдарламалық конвертті, қолданбамен анықталған деректер типтерінің даналарын өрнектеуге арналған кодтау ережелерінің жиынтығын және процедура шақырулары мен жауаптарын көрсетуге арналған конвенцияны қажет етеді.
Осы негізгі түсініктемелер үшін рақмет.
Бұл ақпарат үшін үлкен рахмет мырза.
Осы ақпаратты орналастырғаныңыз үшін өте қуаныштымын - мен ұзақ уақыт бойы REST нені білдіргенін білгім келді! 🙂
Ақырында (соңында!) Осы қорқынышты дыбыстық қысқартулардың барлығы нені білдіретіні туралы қысқаша мәлімет. Түсінікті және тікелей тілді қолданғаныңызға рахмет, нәтиже = болашақ, бұл студент жасаушы үшін сәл жарқын көрінеді.
Сәлем Вик, иә ... мен келісемін. Сөздер қорқынышты. Мен бірінші рет API-ге сұранысты бағдарламалағанымды есімде сақтадым, бәрі басылды және мен оның қаншалықты оңай болғанына сене алмадым. Рахмет!