
וואָס איז אַן API? און אנדערע אַקראָנימז: REST, SOAP, XML, JSON, WSDL
ווען איר נוצן אַ בלעטערער, דיין בלעטערער מאכט ריקוועס פון דעם קליענט ס סערווער, און דער סערווער סענדז צוריק דאַטן וואָס דיין בלעטערער אַסעמבאַלז און דיספּלייז אַ וועב בלאַט מיט. אָבער וואָס אויב איר נאָר געוואלט דיין סערווער אָדער וועב בלאַט צו רעדן צו אן אנדער סערווער? דאָס וואָלט דאַרפן איר צו פּראָגראַם צו אַ API.
וואָס טוט API שטיין פֿאַר?
אַפּי איז אַ אַקראָנים פֿאַר אַפּפּליקאַטיאָן פּראָגראַממינג צובינד (אַפּי). אַן אַפּי איז אַ גאַנג פון רוטינז, פּראָטאָקאָלס און מכשירים פֿאַר בנין וועב-ענייבאַלד און רירעוודיק-באזירט אַפּלאַקיישאַנז. די אַפּי ספּעציפיצירן ווי איר קענען אָטענטאַקייט (אַפּשאַנאַל), בעטן און באַקומען דאַטן פֿון די אַפּי סערווער.
וואָס איז אַ אַפּי?
ווען געוויינט אין דעם קאָנטעקסט פון וועב אַנטוויקלונג, אַן אַפּי איז טיפּיקלי אַ דיפיינד גאַנג פון היפּערטעקסט טראַנספער פּראָטאָקאָל (הטטפּ) בעטן אַרטיקלען, צוזאמען מיט אַ דעפֿיניציע פון די סטרוקטור פון ענטפער אַרטיקלען. וועב אַפּיס לאָזן די קאָמבינאַציע פון קייפל באַדינונגס אין נייַע אַפּלאַקיישאַנז באקאנט ווי מאַשופּס.
וויקיפעדיע
זאל ס צושטעלן אַ פּשוט בייַשפּיל. אויב איר נוצן אַ לינק פאַרקירצער צו פאַרשפּרייטן אַ לאַנג URL גרינגער בעסער, איר קען נוצן אַ סערוויס ווי Bit.ly. איר אַרייַן די לאַנג URL, פאָרלייגן די URL און Bit.ly ריספּאַנדז מיט די קורץ URL.
וואָס אויב איר ווילט צו נוצן Bit.ly אין די פאַרנעם פון אַ פּלאַטפאָרמע וואָס איר נוצן? טאָמער איר האָט געבויט אַ QR קאָד פאַבריקאַנט אָנליין אָבער איר ווילן צו פאַרקירצן לאַנג URL ס ערשטער. אין דעם פאַל, איר קען פּראָגראַם דיין פּלאַץ צו שיקן די בקשה צו די Bit.ly API און דערנאָך כאַפּן די ענטפער צו בויען דיין QR קאָד.
דער פּראָצעס איז אָטאַמייטיד מיט אַ API ווו קיין מענטש ינטערווענטיאָן איז פארלאנגט. דאָס איז די געלעגנהייט וואָס אַפּיס צושטעלן יעדער אָרגאַניזאַציע. אַפּיס אַרוישעלפן סיסטעמען אין סינגקראַנאַזיישאַן פון דאַטן, פּראַסעסינג ריקוועס און אָטאַמייטינג פּראַסעסאַז טיפּיקלי געטאן מאַניואַלי.
אויב אַ פּלאַטפאָרמע האט אַ שטאַרק אַפּי, עס מיטל אַז איר קענען ויסשטימען און אָטאַמייט - שפּאָרן מאַנואַל צייט, ימפּרוווינג די פאַקטיש-צייט קייפּאַבילאַטיז פון דיין פּלאַטפאָרמס און ינשורינג ימפּרוווד אַקיעראַסי - ויסמיידן ישוז מיט מאַנואַל דאַטן פּאָזיציע.
א ווידעא פון ווי אַפּיס אַרבעט
אויב איר זענט אַ פּלאַטפאָרמע דעוועלאָפּער, אַפּיס אויך פאָרשלאָגן די געלעגנהייט צו צעטיילן דיין באַניצער צובינד פון דיין קאַמפּיאַטיישאַן און דאַטאַבייס פֿראגן. פארוואס איז דאָס וויכטיק? ווען איר אַנטוויקלען דיין באַניצער צובינד, איר קענען נוצן די זעלבע אַפּיס וואָס איר אַרויסגעבן פֿאַר אנדערע דריט פּאַרטיעס. איר קענען רירייט דיין באַניצער צובינד אָן זאָרג וועגן ברייקינג די צוריק-סוף ינאַגריישאַן.
ווי צו געפֿינען בנימצא אַפּיס
איר זוכט פֿאַר אַן אַפּי פֿאַר אַ ספּעציפיש פּראָדוקט אָדער דינסט? דאָ זענען עטלעכע רעסורסן וואָס רשימה אַפּיס וואָס איר קענען נוצן פּערסנאַלי און קאמערשעל:
ווי צו פּרובירן APIs
אַן אַפּי איז פשוט אַ הטטפּ בעטן, פיל ווי אַ בלעטערער. די דיפערענשייישאַן איז אַז אַן אַפּי אָפט ריקווייערז עטלעכע אָטענטאַקיישאַן אופֿן צו מאַכן די בעטן. אויב קיין אָטענטאַקיישאַן איז דארף, איר קענען אפילו בעטן דורך פּאַסטינג די בעטן URL אין אַ בלעטערער. דאָ ס אַ בייַשפּיל פון אַ בקשה צו אַן אָפֿן-מקור וועטער אַפּי.
ניצן OSX, איר קענען נוצן די קערל באַפֿעלן אין אַ וואָקזאַל פֿענצטער. ווען איר דורכפירן דעם באַפֿעל, cURL
וועט מאַכן אַ GET בעטן צו די צוגעשטעלט API URL, און דער ענטפער מיט די וועטער פאָרויסזאָגן דאַטן וועט זיין געוויזן אין די טערמינאַל.
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, אַזאַ ווי cURL פֿאַר Windows or קערל פֿאַר Windows דורך Winamp און לויפן די קערל באַפֿעל סימילאַרלי.
דאָ זענען עטלעכע נאָך שפּראַכן און ווי איר קענען מאַכן אַן אַפּי בעטן:
- פּיטהאָן: די
requests
ביבליאָטעק איז אָפט געניצט פֿאַר הטטפּ ריקוועס אין פּיטהאָן. דאָ ס אַ בייַשפּיל:
import requests
response = requests.get('https://example.com')
print(response.text)
- דזשאַוואַסקריפּט (Node.js): די
axios
ביבליאָטעק איז אַ וויידלי-געניצט הטטפּ קליענט פֿאַר Node.js. דאָ ס אַ בייַשפּיל:
const axios = require('axios');
axios.get('https://example.com')
.then(response => {
console.log(response.data);
})
.catch(error => {
console.error(error);
});
- JQuery: ניצן די
$.ajax
or$.get
פאַנגקשאַנז צו מאַכן הטטפּ ריקוועס. דאָ ס אַ ביישפּיל פון מאַכן אַ GET בעטן ניצן$.ajax
אין jQuery:
$.ajax({
url: 'https://example.com',
method: 'GET',
success: function(response) {
console.log(response);
},
error: function(error) {
console.error(error);
}
});
- רובין: רובי ס נאָרמאַל ביבליאָטעק כולל די
net/http
מאָדולע פֿאַר מאכן הטטפּ ריקוועס. דאָ ס אַ בייַשפּיל:
require 'net/http'
require 'uri'
uri = URI.parse('https://example.com')
response = Net::HTTP.get_response(uri)
puts response.body
- Java: Java גיט פאַרשידן לייברעריז און פראַמעוואָרקס פֿאַר הטטפּ ריקוועס, אַזאַ ווי
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
קלאַס צו מאַכן הטטפּ ריקוועס. דאָ ס אַ ביישפּיל פון ווי צו מאַכן אַ 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 # אַפּלאַקיישאַן.
- וואָרדפּרעסס: די וואָרדפּרעסס אַפּי האט זייַן אייגענע פאַנגקשאַנז
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 בעטן, אָבער די לייברעריז טיפּיקלי שטיצן פאַרשידענע הטטפּ מעטהאָדס (GET, POST, אאז"ו ו) און צושטעלן אָפּציעס פֿאַר באַשטעטיקן כעדערז, שיקן בעטן פּיילאָודז און האַנדלינג רעספּאָנסעס אין אַ מער אַוואַנסירטע שטייגער.
געדענקט צו ינסטאַלירן קיין פארלאנגט דיפּענדאַנסיז אָדער לייברעריז פֿאַר דיין פּראָגראַממינג שפּראַך איידער איר לויפן די קאָד ביישפילן.
Talend האט אַ גרויס קראָום אַפּפּליקאַטיאָן פֿאַר ינטעראַקטינג מיט אַפּיס און זען זייער רעספּאָנסעס אויב איר ווילן צו פּרובירן אַפּיס אָן שרייבן אַ שורה פון קאָד.
לייג Talend's API Tester צו קראָום
וואָס איז די Acronym SDK פֿאַר?
SDK איז אַ ראשי תיבות פון ווייכווארג דעוועלאָפּער קיט.
ווען אַ פירמע פּאַבלישאַז זיין אַפּי, עס איז טיפּיקלי אַקאַמפּאַניינג דאַקיומענטיישאַן וואָס ווייַזן ווי די אַפּי אָטענטאַקייץ, ווי עס קענען זיין געפרעגט און די צונעמען רעספּאָנסעס. צו העלפן דעוועלאָפּערס באַקומען אַ אָנהייב, קאָמפּאַניעס אָפט אַרויסגעבן אַ ווייכווארג דעוועלאָפּער קיט (סדק) צו לייכט אַרייַננעמען אַ קלאַס אָדער די נייטיק פאַנגקשאַנז אין פּראַדזשעקס די דעוועלאָפּער שרייבט.
וואָס איז די Acronym XML פֿאַר?
XML איז אַ אַקראָנים פֿאַר עקסטענסיבלע מאַרקאַפּ שפּראַך. קסמל איז אַ מאַרקאַפּ שפּראַך געניצט צו ענקאָוד דאַטן אין אַ פֿאָרמאַט וואָס איז ליינעוודיק פֿאַר מענטשן און מאַשין.
דאָ ס אַ ביישפּיל פון ווי XML איז:
<?xml ווערסיע ="1.0"?> <product id ="1"> פּראָדוקט א דער ערשטער פּראָדוקט 5.00 יעדער
וואָס איז די Acronym JSON פֿאַר?
JSON איז אַן אַקראַנים פֿאַר דזשאַוואַסקריפּט כייפעץ נאָוטיישאַן. דזשסאָן איז אַ פֿאָרמאַט פֿאַר סטראַקטשערינג דאַטן וואָס איז געשיקט צוריק און צוריק דורך אַן אַפּי. JSON איז אַן אָלטערנאַטיוו צו XML. REST APIs ריספּאַנד מער אָפט מיט JSON - אַן אָפֿן נאָרמאַל פֿאָרמאַט וואָס ניצט מענטש-ליינעוודיק טעקסט צו אַריבערפירן דאַטן אַבדזשעקץ קאַנסיסטינג פון אַטריביוט-ווערט פּערז.
דאָ ס אַ ביישפּיל פון די דאַטן אויבן ניצן JSON:
{ "יד": 1, "טיטל": "פּראָדוקט א", "באַשרייַבונג": "דער ערשטער פּראָדוקט", "פרייז": { "סכום": "5.00", "פּער": "יעדער" } }
וואָס איז די Acronym REST פֿאַר?
רו איז אַן אַקראַנים פֿאַר די רעפּרעסענטאַטיאָנאַל שטאַט אַריבערפירן אַרקאַטעקטשעראַל סטיל פֿאַר פונאנדערגעטיילט היפּערמעדיע סיסטעמען.
וויי ... טיף אָטעם! איר קענען לייענען די גאנצע דיסערטיישאַן דאָ, גערופן די אַרטשיטעקטוראַל סטיילז און דער פּלאַן פון נעטוואָרק-באזירט ווייכווארג אַרטשיטעקטורעס דערלאנגט אין פּאַרטיייש צופֿרידנקייט פון די באדערפענישן פֿאַר די גראַד פון דאָקטאָר פון פילאָסאָפיע אין אינפֿאָרמאַציע און קאָמפּיוטער וויסנשאַפֿט דורך רוי טאמעס פיעלדינג.
א דאנק, דר. פיעלדינג!
וואָס איז דער Acronym SOAP פֿאַר?
זייף איז אַן אַקראַנים פֿאַר פּשוט פּראָטאָקאָל פֿאַר כייפעץ אַקסעס
איך בין נישט אַ פּראָגראַמיסט, אָבער אין מיין מיינונג, דעוועלאָפּערס וואס ליבע SOAP טאָן דאָס ווייַל זיי קענען לייכט אַנטוויקלען קאָד אין אַ נאָרמאַל פּראָגראַממינג צובינד וואָס לייענט די וועב סערוויס דעפֿיניציע שפּראַך (wsdl) טעקע. זיי טאָן ניט דאַרפֿן צו פּאַרסירן דעם ענטפער, עס איז שוין פארענדיקט מיט די WSDL. SOAP ריקווייערז אַ פּראָגראַממאַטיק קאָנווערט, וואָס דיפיינז די אָנזאָג סטרוקטור און ווי צו פּראָצעס עס, אַ סכום פון קאָדירונג כּללים פֿאַר יקספּרעסינג ינסטאַנסיז פון אַפּלאַקיישאַן-דיפיינד דאַטאַטיפּעס, און אַ קאַנווענשאַן פֿאַר רעפּריזענטינג פּראָצעדור רופט און רעספּאָנסעס.
דאַנקען פֿאַר דעם יקערדיק דערקלערונגען.
דאָס איז גרויס דאַנקען דיר האר פֿאַר די אינפֿאָרמאַציע.
איך אָפּשאַצן איר פּאָסטינג דעם אינפֿאָרמאַציע - איך געחידושט וואָס מנוחה מענט פֿאַר אַ לאַנג צייַט! 🙂
צום סוף (ענדלעך!) אַ קאַנסייס קיצער פון וואָס אַלע די פריער סקערי-סאַונדינג אַקראַנימז מיינען. דאנק איר פֿאַר ניצן קלאָר און דירעקט שפּראַך, רעזולטאַט = אַ צוקונפֿט וואָס קוקט נאָר אַ ביסל ברייטער פֿאַר דעם תּלמיד דעוועלאָפּער.
הי וויק, יאָ ... איך שטימען. די ווערטער זענען סקערי. איך געדענק די ערשטע מאָל וואָס איך פּראָוגראַמד אַ בקשה צו אַן אַפּי און עס אַלע קליקט און איך קען נישט גלויבן ווי גרינג עס אַקשלי איז. דאַנקען!