Apa itu JSON API?
Tentunya banyak yang tahu.
JSON - Format teks untuk pertukaran data
JSONAPI - Antarmuka Pemrograman Aplikasi
APIKata kunci di sini: antarmuka pertukaran data.
A, lalu apa itu JSON-RPC?
JSON - kita sudah tahu.
RPC - panggilan prosedur jarak jauh
RPCKami menyimpulkan bahwa JSON-RPC adalah: pertukaran data jarak jauh.
Tentunya pertukaran data ini akan terjadi dengan antarmuka tertentu, mis. dengan API.
Dan apa masalahnya ?! Anda bertanya. Dan faktanya adalah beberapa programmer yang mengembangkan JSON API, yaitu antarmuka, lupakan JSON-RPC, dan penemuan sepeda selanjutnya dimulai. Programmer Frontend mengatakan: "Saya akan memberi Anda json seperti itu", dan programmer Backend menjawab: "Saya akan mengembalikan Anda json tersebut". Dan semuanya akan baik-baik saja, tetapi akan baik untuk diingat bahwa orang pintar telah lama mengembangkan standar, atau lebih tepatnya protokol pertukaran data. Dan bukan yang super kompleks, tetapi sangat sederhana:
JSON-RPCKemungkinan besar, jika tidak dikatakan bahwa hampir semua orang tahu dan bahkan menggunakan protokol ini. Sekelompok server ditulis, dll. Namun secara pribadi, tidak semuanya cocok untuk saya dalam protokol yang ada. Bagi saya itu kelihatannya tidak cukup fleksibel dan tidak logis dalam segala hal. Seperti yang mungkin sudah Anda duga, saya memutuskan untuk menciptakan sepeda saya
json-rpc-1.5Perbedaan utama dari protokol yang ada adalah:
- Parameter "tanda" opsional - Tanda tangan atau Token
- Dalam kueri, alih-alih parameter param, parameter data digunakan, karena kami selalu mengirim data, bukan hanya parameter.
- Dalam semua jawaban, parameter "hasil" selalu dikembalikan dan berisi deskripsi hasil dari kueri "sukses" atau "kesalahan".
- Semua data dalam respons datang dalam parameter "data"
- Anda dapat menggunakan alias untuk memberi nama parameter permintaan dan respons.
Tampaknya. bahwa perbedaan itu kecil, tetapi pada dasarnya penting.
Omong-omong, protokol ini muncul dalam praktik, mis. Saat membuat json api, saya menggunakan pendekatan yang dijelaskan dalam protokol ini.
PS:
Setelah menerima banyak komentar dan minus negatif, saya memutuskan untuk memeriksa lagi, mungkin saya benar-benar melakukan sesuatu yang salah? Secara alami, semua yang saya tulis di sini adalah pendapat pribadi saya dan saya tidak memaksakan apa pun pada siapa pun. Saya akan memberikan beberapa contoh:
1. Contoh permintaan
API JSON langsung Yandex :
{ "method": "GetClientInfo", "param": ["agrom"], "locale": "ru", "token": "0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f" }
Mereka juga dapat membaca tentang token:
Token otorisasi2. Contoh dari
Pembayaran API Sberbank
dari aplikasi seluler menggunakan Apple PaySaya tidak akan memberikan permintaan JSON, itu besar, Anda dapat melihat tautannya.
Adalah penting bahwa permintaan JSON berisi "paymentToken".
Berikut ini tautan ke Persyaratan Formasi Token ApplePenting untuk memahami bahwa token dan tanda tangan dalam API sering digunakan, secara alami bersama dengan metode perlindungan lainnya. Dan mereka yang bekerja dengan berbagai API mengetahui hal ini dengan sangat baik.