Cara Menguji API Menggunakan Python dan JavaScript

Cara Menguji API Menggunakan Python dan JavaScript

Ini adalah garis tipis antara memilih antara muka pengaturcaraan aplikasi (API) dan memutuskan sama ada anda boleh bekerja dengannya atau tidak. Kebanyakan REST API mempunyai seni bina generik dan urutan laluan permintaan biasa. Tetapi sesetengah API di luar sana menyimpang daripada standard. Akibatnya, mereka menjadi sukar untuk digunakan.

Oleh itu, sebelum membina keseluruhan perisian anda pada API, anda perlu melakukan semakan kualiti dan memastikan ia berfungsi dengan baik. Jadi apakah ujian API, dan bagaimana anda boleh menguji API?

Apakah Ujian API?

Ujian API melibatkan penilaian awal kefungsian, keselamatan, kebolehskalaan, kelajuan dan banyak lagi API untuk melihat sama ada ia sesuai untuk program yang ingin menggunakannya. Tetapi secara dangkal, ini mungkin melibatkan ujian untuk melihat sama ada ia menghantar respons yang sesuai apabila anda membuat permintaan melalui pelbagai titik akhirnya.

Bergantung pada strukturnya, semasa menguji API, anda akan membuat permintaan (Dapatkan, Siarkan, Kemas Kini atau Padam) ke titik akhir yang berkaitan. Terdapat banyak metrik untuk diperiksa semasa ujian API. Tetapi pada peringkat pemula, anda ingin mengesahkan integriti API daripada kod statusnya dan memastikan ia mengambil dan menerima data yang betul.

Untuk itu, seperti mana-mana permintaan web, API mungkin mengembalikan kod status 200, 400 atau 500 atau bahkan yang lain.

Kebanyakan API menggunakan respons JSON untuk menyampaikan muatan mereka. Bergantung pada matlamat, orang lain mungkin menerima dan membalas dengan muatan XML, berbilang bahagian atau HTML.

Cara Menguji API Menggunakan Python dan JavaScript

Walaupun terdapat banyak alat ujian API antara muka pengguna grafik (GUI) di internet, anda boleh menilai API secara lebih kritikal dengan skrip bertulis.

API memberitahu dalam dokumentasinya jenis permintaan yang dibenarkan dan menyediakan titik akhir yang berkaitan kepada mereka. Jadi anda boleh ambil dan uji mereka menggunakan kaedah permintaan yang sesuai.

Berkaitan: Apakah REST API dan Bagaimana Anda Boleh Merebut Data untuk Apl atau Laman Web Anda?

Tidak seperti fasa pengeluaran sebenar, ujian API adalah kasar. Jadi anda tidak memerlukan kekhususan seperti yang anda perlukan semasa menjalankan API untuk pengeluaran. Walaupun terdapat pelbagai jenis ujian API, kami akan lebih menumpukan pada ujian pengesahan respons dalam artikel ini.

Kami akan menguji API kedai palsu dalam tutorial ini menggunakan JavaScript yang mengambil dan Python permintaan perpustakaan. Semasa melakukan ini, kami akan menguji titik akhir untuk mendapatkan, menyiarkan, mengemas kini dan memadam data.

Cara Menguji Dapatkan Titik Akhir API Dengan JavaScript

Seperti yang anda gunakan dalam pengeluaran, anda boleh menguji API dalam JavaScript menggunakan sama ada Axios atau kaedah pengambilan .

Untuk mendapatkan status respons daripada API menggunakan fetch :

fetch('https://fakestoreapi.com/products', ).then(res =>{ console.log(res) })

Permintaan di atas mengembalikan status 200 jika ia adalah respons yang sah. Sebaik sahaja anda membuat permintaan yang berjaya, anda kemudian boleh meminta data masa nyata daripada API.

Mari dapatkan data daripada API ini:

fetch('https://fakestoreapi.com/products', ).then(res =>{ if (res.ok){ return res.json() } }).then(response=>{ console.log(response) }).catch(err => console.log(err))

Respons kepada kod pengambilan di atas kelihatan seperti ini:

Cara Menguji API Menggunakan Python dan JavaScript

Untuk mendapatkan harga semua produk, contohnya, anda boleh menggunakan fungsi peta :

fetch('https://fakestoreapi.com/products', ).then(res =>{ if (res.ok){ return res.json() } }).then(response=>{ response.map(data =>{ console.log(data.price) }) // console.log(response) }).catch(err => console.log(err))

Di atas mencatatkan output berikut:

Cara Menguji API Menggunakan Python dan JavaScript

Menguji Get Endpoint Dengan Python

Seperti yang dinyatakan sebelum ini, Python juga menggunakan perpustakaan permintaan untuk mengakses data API.

Untuk menyemak status respons dalam kes ini:

import requests data = requests.get('https://fakestoreapi.com/products') print(data.status_code)

Data pengelogan seperti yang kami lakukan di atas mengembalikan status yang sepadan. Ia adalah 200 dalam kes ini, walaupun.

Sekarang mari kita dapatkan data yang sama dengan Python seperti yang kita lakukan semasa menggunakan JavaScript:

import requests data = requests.get('https://fakestoreapi.com/products') myData = data.json() print(myData)

Keputusan di atas kelihatan seperti ini:

Cara Menguji API Menggunakan Python dan JavaScript

Anda boleh mendapatkan data khusus menggunakan gelung for .

Untuk mendapatkan harga produk, contohnya:

import requests data = requests.get('https://fakestoreapi.com/products') myData = data.json() indexes = 0 for i in myData: goods = myData[indexes] indexes +=1 print(goods["price"])

Inilah yang kelihatan seperti output:

Cara Menguji API Menggunakan Python dan JavaScript

Menguji Titik Akhir Siaran Dengan JavaScript

Selepas menguji dan melihat bahawa permintaan Dapatkan berfungsi, bergantung pada matlamat anda dan perkara yang ditawarkan oleh API, anda mungkin ingin menyemak sama ada anda boleh memasukkan data ke dalamnya juga.

Berbeza dengan cara anda membuat permintaan Dapatkan , permintaan Pos menerima muatan. Selain itu, anda perlu menyatakan bahawa ia adalah permintaan Siaran:

// Specify the payload let payload = { title: 'new product', price: 13.5, description: 'test description', image: '', category: 'electronic' } fetch('https://fakestoreapi.com/products', { method: "Post", headers:{ 'Content-Type': 'application/json' }, body: JSON.stringify(payload) //convert the payload to JSON } ).then(res =>{ if (res.ok){ console.log(res.status) return res.json() } }).then(response => { console.log(response) }).catch(err => console.log(err))

Kod di atas mencatatkan kod status respons dan maklumat baharu yang dimasukkan semasa anda menjalankannya. Ini memberitahu anda jika permintaan anda berjaya atau tidak. Biasanya, jika kod status ialah 200, maka API anda mempunyai titik akhir yang sah yang mengembalikan respons yang sesuai.

Menguji Permintaan Pos Dengan Python

Anda juga boleh menguji titik akhir siaran API menggunakan requests.post Python . Seperti yang anda lakukan semasa menggunakan JavaScript's fetch , anda perlu menentukan muatan di sini juga:

import requests payload = { 'title': 'new product', 'price': 13.5, 'description': 'test description', 'image': '', 'category': 'electronic' } Posted = requests.post('https://fakestoreapi.com/products', data = payload ) print(Posted.status_code) print(Posted.json())

Seperti JavaScript, kod Python di atas juga mencatatkan kod status respons dan data baharu yang dinyatakan dalam muatan .

Menguji Titik Akhir Put

Mengemas kini data API mengambil proses yang sama seperti menyiarkan dan mendapatkannya dalam kedua-dua bahasa.

Untuk melakukan ini menggunakan JavaScript's fetch , anda hanya perlu menggantikan Post dengan Put :

// Specify the payload let payload = { title: 'new product', price: 13.5, description: 'test description', image: '', category: 'electronic' } fetch('https://fakestoreapi.com/products/19', { method: "Put", headers:{ 'Content-Type': 'application/json' }, body: JSON.stringify(payload) //convert the payload into JSON } ).then(res =>{ if (res.ok){ console.log(res.status) return res.json() } }).then(response => { console.log(response) }).catch(err => console.log(err))

Jika anda memberi perhatian kepada titik akhir API, anda akan melihat bahawa ia termasuk ID produk kali ini. Beginilah cara API mengetahui data yang ingin anda kemas kini dalam kes ini.

Walau bagaimanapun, sesetengah API mungkin menggunakan kaedah lain untuk mencipta titik akhir mereka. Jadi itu bukan standard.

Untuk menguji kemas kini data API menggunakan Python, anda sebaliknya menggunakan requests.put :

import requests payload = { 'title': 'new product', 'price': 13.5, 'description': 'test description', 'image': '', 'category': 'electronic' } Posted = requests.put('https://fakestoreapi.com/products/19', data = payload ) print(Posted.status_code) print(Posted.json())

Contoh di atas, jika berjaya, masukkan data baharu ke kedudukan 19 seperti yang ditunjukkan oleh titik akhir API.

Menguji Permintaan Padam

Memadam data daripada API adalah semudah membuat permintaan Dapatkan. Ini kerana, tidak seperti Post dan Put, anda tidak perlu menentukan sebarang muatan. Apa yang anda perlukan ialah titik akhir padam.

API pilihan kami di sini menggunakan ID produk untuk menjejak datanya. Jadi, memadam produk adalah mudah:

fetch('https://fakestoreapi.com/products/19', { method: "Delete", headers:{ 'Content-Type': 'application/json' } } ).then(res =>{ if (res.ok){ console.log(res.status) return res.json() } }).then(response => { console.log(response) }).catch(err => console.log(err))

Anda hanya memerlukan beberapa baris kod untuk mencapai perkara yang sama menggunakan Python:

import requests Posted = requests.delete('https://fakestoreapi.com/products/19', ) print(Posted.status_code) print(Posted.json())

Kedua-dua contoh di atas mencatatkan kod status respons dan data kepunyaan id yang ditanya (19 dalam kes ini).

Adakah Kaedah Pengujian Ini Generik?

Walaupun kami hanya memfokuskan pada satu API dalam siaran ini, kaedah yang digunakan untuk menguji titik akhir CRUD tidak berbeza apabila berurusan dengan API lain. Satu-satunya perbezaan, sudah tentu, mungkin dalam peraturan yang mengelilingi setiap struktur API dan garis panduan untuk meminta data. Sebaik sahaja anda menguraikan ini untuk API yang dipilih, anda kemudian boleh menggunakan kaedah yang sesuai, seperti yang diterangkan di sini, untuk menguji titik akhir yang sepadan.

Oleh itu, memandangkan setiap API mempunyai peraturan untuk menyambung kepadanya, jadi semasa menguji, sesetengah mungkin menyediakan parameter tambahan untuk anda sertakan dalam pengepala permintaan anda. Parameter sedemikian biasanya termasuk token akses atau yang lain seperti yang disediakan dalam dokumentasi.


Cara Mengira Nilai nCr

Cara Mengira Nilai nCr

Gabungan ialah konsep matematik. Ia merujuk kepada susunan beberapa objek yang susunannya tidak relevan. Formula asas menerangkan bilangan gabungan yang sah.

Cara Menulis & Menyusun Kod Soliditi Pertama Anda

Cara Menulis & Menyusun Kod Soliditi Pertama Anda

Solidity ialah bahasa pengaturcaraan yang digunakan oleh kontrak pintar pada blockchain Ethereum. Ia adalah bahasa pengaturcaraan berorientasikan objek yang ditaip secara statik.

SQL vs. NoSQL: Apakah Pangkalan Data Terbaik untuk Projek Anda Seterusnya?

SQL vs. NoSQL: Apakah Pangkalan Data Terbaik untuk Projek Anda Seterusnya?

SQL vs. NoSQL: Apakah Pangkalan Data Terbaik untuk Projek Anda Seterusnya?

Cara Mencari Kiub dan Petak Sempurna N-Digit Menggunakan Python, C++ dan JavaScript

Cara Mencari Kiub dan Petak Sempurna N-Digit Menggunakan Python, C++ dan JavaScript

Ramai pengaturcara suka menyelesaikan masalah matematik rumit menggunakan kod. Ia membantu menajamkan minda dan meningkatkan kemahiran menyelesaikan masalah. Dalam artikel ini, anda akan belajar cara mencari petak dan kiub sempurna n-digit terkecil dan terbesar menggunakan Python, C++ dan JavaScript. Setiap contoh juga mengandungi output sampel untuk beberapa nilai yang berbeza.

Cara Menggunakan Python sebagai Kalkulator Baris Perintah

Cara Menggunakan Python sebagai Kalkulator Baris Perintah

Walaupun anda boleh menggunakan kalkulator grafik pada komputer anda, penterjemah bahasa pengaturcaraan Python boleh berfungsi sebagai kalkulator meja. Ia adalah jenaka yang popular dalam komuniti Python yang disebut dalam tutorial rasmi. Inilah cara anda boleh menggunakan Python sebagai kalkulator.

Bermula Dengan Buku Nota Jupyter: Satu Tutorial

Bermula Dengan Buku Nota Jupyter: Satu Tutorial

Jika anda seorang saintis data yang bercita-cita tinggi yang bekerja dengan Python atau R, anda perlu tahu cara menggunakan Jupyter Notebook. Ia adalah IDE sumber terbuka dan berasaskan pelayan untuk memanipulasi data, berkongsi kod langsung, serta mengurus aliran kerja sains data.

Pengekodan Bukan untuk Semua Orang: 9 Pekerjaan Teknologi yang Anda Boleh Dapatkan Tanpanya

Pengekodan Bukan untuk Semua Orang: 9 Pekerjaan Teknologi yang Anda Boleh Dapatkan Tanpanya

Teknologi, tidak dinafikan, adalah industri masa depan. Jika anda salah seorang daripada berjuta-juta dewasa muda yang akan terjun ke peringkat pertama kerjaya anda, anda mungkin tertanya-tanya apa yang perlu dilakukan jika anda tidak suka pengekodan.

7 Perintah Penting untuk Bermula Dengan Python untuk Pemula

7 Perintah Penting untuk Bermula Dengan Python untuk Pemula

Mempelajari bahasa pengaturcaraan baharu seperti Python menjadi mudah jika anda mempunyai peta jalan yang komprehensif yang memperincikan konsep yang perlu dipelajari sebagai pemula dan cara untuk maju lebih jauh untuk mencapai pencapaian seterusnya. Malah pengaturcara perantaraan harus kerap meneliti asas mereka untuk membina asas yang kukuh untuk diri mereka sendiri.

Aplikasi Web ASP.NET Pertama Anda: Cara Bermula

Aplikasi Web ASP.NET Pertama Anda: Cara Bermula

ASP.NET ialah rangka kerja merentas platform percuma Microsoft untuk membina apl dan perkhidmatan web. Platform ASP.NET ialah sambungan kepada .NET, platform pembangun alat, bahasa pengaturcaraan dan perpustakaan yang digunakan untuk membina aplikasi yang berbeza.

9 Alternatif Docker Terbaik untuk Pengurusan Kontena

9 Alternatif Docker Terbaik untuk Pengurusan Kontena

Bekas sangat bermanfaat untuk pembangunan perisian, penggunaan dan pengurusan dalam persekitaran maya. Docker berguna dalam proses kontena, tetapi ia bukan satu-satunya platform yang ada. Jika anda sedang mencari beberapa alternatif kepada Docker, jangan cari lagi. Senarai ini mempamerkan beberapa alternatif Docker yang kaya dengan ciri dan cekap untuk digunakan dalam projek anda yang seterusnya.

Adakah ARCore atau ARKit Lebih Baik Untuk Mencipta Pengalaman Realiti Diperkukuh?

Adakah ARCore atau ARKit Lebih Baik Untuk Mencipta Pengalaman Realiti Diperkukuh?

Beberapa aplikasi dan pengalaman mudah alih yang paling banyak diperkatakan hari ini menggunakan teknologi realiti tambahan. Walaupun sesetengah pengalaman ini boleh berfungsi pada hampir mana-mana peranti mudah alih, yang lain hanya berfungsi pada model yang lebih baharu dan lebih mahal. Membangunkan dan menggunakan pengalaman yang lebih mantap ini memerlukan ARCore dan ARKit.

Cara Membuat Cawangan Baharu dalam Git

Cara Membuat Cawangan Baharu dalam Git

Cawangan adalah teras kepada konsep kawalan versi dalam pengaturcaraan, dan Git khususnya. Artikel permulaan ini memberitahu anda apa itu cawangan dan cara menciptanya menggunakan beberapa alatan yang berbeza.

Cara Menggunakan Python if Statement

Cara Menggunakan Python if Statement

Pernyataan if adalah penggerak pengaturcaraan logik. Akibatnya, pemahaman yang lebih baik tentang Pythons adalah tambahan penting kepada kemahiran pengaturcaraan Python anda.

5 Lencana Teratas Yang Akan Mengecas Repositori GitHub Anda

5 Lencana Teratas Yang Akan Mengecas Repositori GitHub Anda

Lencana GitHub boleh meningkatkan kebolehbacaan repositori dengan menyediakan pengguna dengan cara yang pantas untuk menangkap metrik repositori. Lencana boleh dibenamkan dalam README.md anda untuk menjelaskan kepentingan dan keperluan projek anda kepada pembangun lain. Akibatnya, pembaca mendapat idea yang sangat pantas tentang repositori dengan menyemak lencana yang dilampirkan.

Bermula Dengan Redis dan PHP untuk Penyimpanan Data Pantas

Bermula Dengan Redis dan PHP untuk Penyimpanan Data Pantas

Enjin storan Redis yang popular ialah alat yang sangat baik dan mesti ada dalam mana-mana senjata pembangun perisian. Enjin storan dalam memori membolehkan penyimpanan dan mendapatkan semula data yang sangat pantas, sehingga 32 juta pertanyaan sesaat yang mengagumkan, menjadikannya pelengkap utama kepada mana-mana enjin pangkalan data utama.

Apakah WYSIWYG?

Apakah WYSIWYG?

Sebahagian daripada keajaiban pembangunan perisian berlaku apabila baris kod berubah menjadi lebih daripada jumlah bahagiannya. Anda akan mendapati anda memerlukan sedikit visualisasi kreatif apabila cuba membina secara abstrak dengan cara ini. Ini boleh berlaku untuk pemprosesan perkataan atau reka bentuk web, sama seperti yang boleh dilakukan untuk pengaturcaraan.

Cara Memasang .NET Framework Versi 3.5 pada Windows 10

Cara Memasang .NET Framework Versi 3.5 pada Windows 10

Sebagai pengguna Windows, anda mungkin sekurang-kurangnya sekali menjumpai perkataan .NET Framework. Ia merupakan rangka kerja perisian yang dibangunkan oleh Microsoft yang membolehkan anda membina dan menjalankan program C#, C++, F# dan Visual Basic. Versi .NET terkini ialah 4.8, tetapi komputer anda mungkin memerlukan versi .NET yang lebih lama (seperti .NET 3.5) untuk menjalankan beberapa apl.

WordPress vs. Wix: Perbezaan Utama

WordPress vs. Wix: Perbezaan Utama

Anda sering menghadapi dilema klasik semasa membina tapak web untuk diri sendiri atau perniagaan anda. WordPress vs. Wix—yang mana satu untuk dipilih dan apakah pilihan terbaik untuk anda?

10 Distro Linux Terbaik untuk Pembangun

10 Distro Linux Terbaik untuk Pembangun

Walaupun Linux mungkin bukan sistem pengendalian yang digemari untuk pengguna biasa, ia adalah pilihan utama untuk kebanyakan pembangun dan pengaturcara. Linux ialah OS yang lebih praktikal yang direka secara eksplisit dengan mengambil kira pengaturcaraan dan pembangun.

Cara Menyasarkan Bahagian Halaman Web Menggunakan Pemilih CSS

Cara Menyasarkan Bahagian Halaman Web Menggunakan Pemilih CSS

Cascading Style Sheets (CSS) membolehkan anda mengubah rupa halaman web anda. Daripada fon dan warna kepada jarak dan susun atur keseluruhan, semua jenis alatan reka bentuk berada di hujung jari anda. Walaupun CSS adalah bahasa yang rumit secara keseluruhannya, hanya terdapat dua konsep asas yang perlu anda fahami untuk bermula.

Cara Mengira Nilai nCr

Cara Mengira Nilai nCr

Gabungan ialah konsep matematik. Ia merujuk kepada susunan beberapa objek yang susunannya tidak relevan. Formula asas menerangkan bilangan gabungan yang sah.

Cara Menulis & Menyusun Kod Soliditi Pertama Anda

Cara Menulis & Menyusun Kod Soliditi Pertama Anda

Solidity ialah bahasa pengaturcaraan yang digunakan oleh kontrak pintar pada blockchain Ethereum. Ia adalah bahasa pengaturcaraan berorientasikan objek yang ditaip secara statik.

SQL vs. NoSQL: Apakah Pangkalan Data Terbaik untuk Projek Anda Seterusnya?

SQL vs. NoSQL: Apakah Pangkalan Data Terbaik untuk Projek Anda Seterusnya?

SQL vs. NoSQL: Apakah Pangkalan Data Terbaik untuk Projek Anda Seterusnya?

Cara Mencari Kiub dan Petak Sempurna N-Digit Menggunakan Python, C++ dan JavaScript

Cara Mencari Kiub dan Petak Sempurna N-Digit Menggunakan Python, C++ dan JavaScript

Ramai pengaturcara suka menyelesaikan masalah matematik rumit menggunakan kod. Ia membantu menajamkan minda dan meningkatkan kemahiran menyelesaikan masalah. Dalam artikel ini, anda akan belajar cara mencari petak dan kiub sempurna n-digit terkecil dan terbesar menggunakan Python, C++ dan JavaScript. Setiap contoh juga mengandungi output sampel untuk beberapa nilai yang berbeza.

Cara Menggunakan Python sebagai Kalkulator Baris Perintah

Cara Menggunakan Python sebagai Kalkulator Baris Perintah

Walaupun anda boleh menggunakan kalkulator grafik pada komputer anda, penterjemah bahasa pengaturcaraan Python boleh berfungsi sebagai kalkulator meja. Ia adalah jenaka yang popular dalam komuniti Python yang disebut dalam tutorial rasmi. Inilah cara anda boleh menggunakan Python sebagai kalkulator.

Cara Membenamkan Tweet dalam Siaran WordPress Anda

Cara Membenamkan Tweet dalam Siaran WordPress Anda

Membenamkan perkhidmatan pihak ketiga pada siaran WordPress anda ialah cara yang menarik untuk memikat minat pelawat. Kandungan terbenam juga menyediakan isyarat visual yang memudahkan pengimbasan. WordPress telah memudahkan penambahan jenis kandungan ini.

Bermula Dengan Buku Nota Jupyter: Satu Tutorial

Bermula Dengan Buku Nota Jupyter: Satu Tutorial

Jika anda seorang saintis data yang bercita-cita tinggi yang bekerja dengan Python atau R, anda perlu tahu cara menggunakan Jupyter Notebook. Ia adalah IDE sumber terbuka dan berasaskan pelayan untuk memanipulasi data, berkongsi kod langsung, serta mengurus aliran kerja sains data.

Pengekodan Bukan untuk Semua Orang: 9 Pekerjaan Teknologi yang Anda Boleh Dapatkan Tanpanya

Pengekodan Bukan untuk Semua Orang: 9 Pekerjaan Teknologi yang Anda Boleh Dapatkan Tanpanya

Teknologi, tidak dinafikan, adalah industri masa depan. Jika anda salah seorang daripada berjuta-juta dewasa muda yang akan terjun ke peringkat pertama kerjaya anda, anda mungkin tertanya-tanya apa yang perlu dilakukan jika anda tidak suka pengekodan.

7 Perintah Penting untuk Bermula Dengan Python untuk Pemula

7 Perintah Penting untuk Bermula Dengan Python untuk Pemula

Mempelajari bahasa pengaturcaraan baharu seperti Python menjadi mudah jika anda mempunyai peta jalan yang komprehensif yang memperincikan konsep yang perlu dipelajari sebagai pemula dan cara untuk maju lebih jauh untuk mencapai pencapaian seterusnya. Malah pengaturcara perantaraan harus kerap meneliti asas mereka untuk membina asas yang kukuh untuk diri mereka sendiri.

Aplikasi Web ASP.NET Pertama Anda: Cara Bermula

Aplikasi Web ASP.NET Pertama Anda: Cara Bermula

ASP.NET ialah rangka kerja merentas platform percuma Microsoft untuk membina apl dan perkhidmatan web. Platform ASP.NET ialah sambungan kepada .NET, platform pembangun alat, bahasa pengaturcaraan dan perpustakaan yang digunakan untuk membina aplikasi yang berbeza.