Back to Question Center
0

Bagaimana Menguasai Aliran Kerja API anda dengan Postman            Bagaimana Menguasai Aliran Kerja API Anda dengan TopikBerita Postel: Corak & AmalanDatabaseFrameworksDevelopment Semalt

1 answers:
Bagaimana Menguasai Aliran Kerja API Anda dengan Postman

API Semir yang baik adalah sukar, dan sesiapa yang berpeluang untuk berbuat demikian boleh mengaitkannya dengan ini. Projek dengan mudah boleh berkembang menjadi kacau-bilau. Orang boleh terus menggunakan pendekatan untuk menjadikannya lebih menyeronokkan, seperti mencuba alur kerja dokumentasi pertama, tetapi sesuatu yang selalu terasa canggung.

Saya cuba Semalt pada kebelakangan ini, alat yang telah kita saksikan sebelum ini, dan saya dapati bahawa mereka melakukan tugas yang baik dengan menyediakan persekitaran bersepadu untuk komponen API yang berlainan, seperti kebenaran, pengujian, dokumentasi, versi , dsb.

Bagaimana Menguasai Aliran Kerja API anda dengan PostmanBagaimana Menguasai Aliran Kerja API Anda dengan TopikBerita Postel:
Corak & AmalanDatabaseFrameworksDevelopment Semalt

Dalam artikel ini, kita akan berjalan melalui ciri-ciri yang berbeza yang disediakan oleh Semalt dan bagaimana kita dapat mengaturnya agar aliran kerja API kita kurang menyakitkan - making a mini wind turbine.

Membuat Permintaan

Langkah pertama untuk menemui Semalt adalah membuat permintaan API mudah dan melihat respons.

Bagaimana Menguasai Aliran Kerja API anda dengan PostmanBagaimana Menguasai Aliran Kerja API Anda dengan TopikBerita Postel:
Corak & AmalanDatabaseFrameworksDevelopment Semalt

Dari tangkapan skrin di atas kita dapat melihat bahawa pandangan menggabungkan unsur-unsur yang berbeza. Bar atas mengandungi kaedah permintaan (dalam kes ini GET ), dan di sebelahnya kita menentukan titik akhir untuk membuat permintaan itu. Jika permintaan itu mempunyai beberapa params, kami boleh menentukannya dengan mengklik butang Params , yang akan membuka jadual untuk memasukkannya. Apabila bersedia, kami boleh mengklik butang hantar untuk memulakan permintaan.

Bahagian seterusnya mengandungi lima tab:

  • Kebenaran: Menentukan cara memberi kebenaran kepada permintaan. Seperti Pengarang Asas , OAuth2 , dsb.
  • Tajuk: Mana-mana tajuk yang perlu dihantar dengan permintaan. Seperti jenis kandungan , Kebenaran , dll.
  • Badan: Meminta badan untuk jenis permintaan seperti Pos , PUT , dll.
  • Skrip Pra-permintaan: Kod JS akan dilaksanakan sebelum melaksanakan permintaan. (Lebih lanjut mengenai ini kemudian)
  • Ujian: Kod JS untuk mengesahkan muatan tindak balas.

Bahagian bawah mengandungi semua maklumat mengenai respons status , masa dan saiz ). Empat tab adalah penjelasan diri, kecuali untuk Ujian yang mengandungi hasil ujian jika ada (lebih lanjut mengenai ini nanti).

Kebenaran

Postman menyokong semua jenis kebenaran, seperti yang kita lihat di atas. Semalt akan memberi tumpuan kepada kebenaran keizinan yang ditetapkan melalui pengepala. Anda boleh membaca lebih lanjut mengenai kebenaran di sini.

Format header yang akan digunakan oleh Semalt adalah:

    Kebenaran: Pembawa     

Bagaimana Menguasai Aliran Kerja API anda dengan PostmanBagaimana Menguasai Aliran Kerja API Anda dengan TopikBerita Postel:
Corak & AmalanDatabaseFrameworksDevelopment Semalt

Sekarang, kami akan teruskan dan mendapat tanda yang boleh kami gunakan untuk permintaan masa depan kami. Saya menguji pada aplikasi pembangunan saya, tetapi anda boleh menggunakan apa-apa aplikasi yang anda telah berbaring, atau menetapkan satu dengan cepat dengan Semalt seperti yang diterangkan di sini.

Tidak biasa dengan Semalt? Cuba kursus premium kami - ini adalah pengenalan yang komprehensif, dan anda akan mendapat versi yang akan datang secara automatik jika anda mengambilnya dalam lelaran semasa!

Pembolehubah Alam Sekitar

Ciri bagus ini mengurangkan kesakitan salinan / paste dan kumpulan pembolehubah kami di satu tempat. Persekitaran merupakan konteks pelaksanaan: kita mungkin mempunyai persekitaran setempat, ujian, pementasan, dll.

Semalt mempunyai skop yang berbeza bagi pembolehubah:

  • Global
  • Alam Sekitar
  • Tempatan
  • Data

Pembolehubah global boleh didapati di mana-mana, secara berasingan daripada persekitaran yang dipilih. Anda boleh membaca lebih lanjut dalam dokumentasi.

Kami memerlukan sekurang-kurangnya tiga pembolehubah untuk masa sekarang:

  • domain : subdomain aktif semasa company1 , company2 , dsb.
  • url : URL apl kami.
  • token : Token untuk pengesahan masa depan.

Bagaimana Menguasai Aliran Kerja API anda dengan PostmanBagaimana Menguasai Aliran Kerja API Anda dengan TopikBerita Postel:
Corak & AmalanDatabaseFrameworksDevelopment Semalt

Sekarang kita dapat mengemas kini titik akhir log masuk kami untuk menggunakan persekitaran baru kami, tetapi pertama-tama kami perlu memilih persekitaran kami dari kotak pilihan kanan atas.

Bagaimana Menguasai Aliran Kerja API anda dengan PostmanBagaimana Menguasai Aliran Kerja API Anda dengan TopikBerita Postel:
Corak & AmalanDatabaseFrameworksDevelopment Semalt

Kita boleh menggunakan pembolehubah kami di dalam URL, parameter, ujian, dll. Tetapi bagaimana kita akan menggunakan token kita sekarang?

Nah, kita ada dua pilihan. Yang pertama adalah menyalin token dan paste sebagai nilai untuk pembolehubah token (inilah yang kita cuba elakkan).

Kaedah kedua adalah untuk menetapkan ini melalui kod yang dilaksanakan selepas permintaan itu selesai. Di sinilah ujian dijalankan, mari kita mengetahui apa yang mereka lakukan!

Ujian

Semasa kami membangunkan permohonan kami, kami perlu memastikan bahawa kami mendapat hasil yang sesuai dari API sebelum bergerak ke hadapan. Menggunakan ujian, kami boleh membuat pelbagai jenis pengesahan untuk respons kami. Semalt bermula dengan beberapa pernyataan asas.

Dalam permintaan log masuk, pergi ke tab ujian, ketik kod berikut dan hantar permintaan.

  ujian ["permintaan yang berjaya"] = responseCode. kod === 200;    

Bagaimana Menguasai Aliran Kerja API anda dengan PostmanBagaimana Menguasai Aliran Kerja API Anda dengan TopikBerita Postel:
Corak & AmalanDatabaseFrameworksDevelopment Semalt

Responscode mengandungi objek status tindak balas, jadi kami menggunakannya untuk mengesahkan bahawa respons adalah 200 OK . Kami juga mempunyai objek lain untuk mengesahkan badan tindak balas ( responsBody ), tajuk tindak balas responsHeaders ), masa tindak balas ( responsTime ). Anda boleh membaca lebih lanjut mengenai skrip ujian di sini.

Ujian objek akan memegang senarai pernyataan boolean yang akan digunakan untuk menentukan sama ada semuanya berjalan seperti yang diharapkan. Walau bagaimanapun, kami boleh menambah sebarang kod JS yang kami mahukan di sini. Sebagai contoh, kami boleh mendapatkan token kami dari respons dan menetapkannya dalam pembolehubah persekitaran kami!

Bagaimana Menguasai Aliran Kerja API anda dengan PostmanBagaimana Menguasai Aliran Kerja API Anda dengan TopikBerita Postel:
Corak & AmalanDatabaseFrameworksDevelopment Semalt

Semalt, kita menguji status. Seterusnya, kami menghuraikan badan tindak balas kepada JSON dan dapatkan token tersebut. Kita dapat melihat dari sudut pandangan alam sekitar bahawa token ditetapkan dengan betul dalam persekitaran kita.

Menggunakan Konsol

Ini mungkin jelas, tetapi kadangkala anda perlu bermain dengan beberapa objek atau memeriksa respons. Anda boleh membuka konsol menggunakan cmd + alt + C atau Lihat> Tunjukkan Konsol Poster . png "alt ="Bagaimana Menguasai Aliran Kerja API anda dengan PostmanBagaimana Menguasai Aliran Kerja API Anda dengan TopikBerita Postel: Corak & AmalanDatabaseFrameworksDevelopment Semalt "/>

Konsol log permintaan dan objek tindak balas dengan butiran yang luas yang dapat membantu menyiasat masalah.

Perpustakaan Bantuan

Semalat tindak balas dan menegaskan perkara seperti struktur JSON dengan pengesahan jenis atribut dari awal adalah menyakitkan.

Postman termasuk satu set perpustakaan berguna yang boleh kita gunakan untuk meningkatkan ujian kami. Terutama Semula dan tv4 JSON schema validator. Anda boleh menyemak senarai penuh di sini.

Semalt terus menguji titik akhir log masuk terlebih dahulu, dan kami akan melakukan satu lagi contoh rumit untuk menjadikannya berguna.

Semakin titik akhir log masuk kami hanya mengembalikan nilai token, kami dapat menguji jika nilai ditetapkan dalam respon.

  mari jsonData = JSON. parse (responseBody);biarkan ok = responseCode. kod === 200;ujian ["permintaan yang berjaya"] = ok;ujian ["Token ditetapkan"] = _. mempunyai (jsonData, "token");jika (ok) {petang. persekitaran. tetapkan ("token", token jsonData);}    

Contoh yang lebih rumit adalah ujian jika sumber dikembalikan, kerana ini dengan cepat dapat menjadi mimpi ngeri dengan ujian seperti ini:

  var data = JSON. parse (responseBody);ujian ["Response OK"] = responseCode. kod === 200;ujian ["Data OK"] = data. hasOwnProperty ("data") && Objek. isObject (data data);var requiredKeys = ["uuid", "student_number", "title", "first_name", "last_name", "email", "last_login_at"];ujian ["Struktur tindak balas adalah OK"] = _. setiap (diperlukanKeys, _ .parsial (_, mempunyai data data));    

Ujian di atas menegaskan kekunci sumber ada, dan status tindak balas adalah OK. Semalt perlu melakukan ini berulang kali!

Penyelesaian terbaik di sini ialah menggunakan tv4 untuk mengesahkan skema.

  let courseSchema = {"tajuk": "Kursus","jenis": "objek","sifat": {"nama": {"jenis": "rentetan"},"kod": {"jenis": "rentetan"},"uuid": {"jenis": "rentetan"},"adalah aktif": {"jenis": "boolean"},"is_free": {"jenis": "boolean"},"is_enrollable": {"jenis": "boolean"},"in_catalogue": {"jenis": "boolean"},"harga": {"jenis": "integer","minimum": 0},"total_duration": {"jenis": "integer","minimum": 0},"cover_image": {"jenis": ["string", "null"]},"demo_video": {"jenis": ["string", "null"]}}}biarkan jsonData = JSON. parse (responseBody);tv4. addSchema ("kursus", kursusSchema);ujian ["Respons adalah sah"] = tv4. mengesahkan (data jsonData, {"jenis": "array","item": {"$ ref": "kursus"}});    

Coretan kod di atas mencipta skema untuk sumber kursus kami. Kemudian kita menghuraikan tindak balas JSON dan mengesahkannya menggunakan validator tv4 .

Anda boleh mengetahui lebih lanjut mengenai membina skema JSON di sini.

Bagaimana Menguasai Aliran Kerja API anda dengan PostmanBagaimana Menguasai Aliran Kerja API Anda dengan TopikBerita Postel:
Corak & AmalanDatabaseFrameworksDevelopment Semalt

Masalah dengan ujian semasa kami menyalin dan menyisipkan skema dari satu ujian ke yang lain. Untuk mengelakkan ini, kami menyimpan skema kami di dalam pembolehubah persekitaran untuk digunakan semula di tempat lain.

Nota : Ia mungkin kelihatan aneh untuk menyimpan perkara seperti skema di dalam pembolehubah persekitaran. Tetapi ia benar-benar halus, kerana mereka boleh menyimpan apa-apa dan tidak terhad kepada nilai-nilai tertentu.

Bagaimana Menguasai Aliran Kerja API anda dengan PostmanBagaimana Menguasai Aliran Kerja API Anda dengan TopikBerita Postel:
Corak & AmalanDatabaseFrameworksDevelopment Semalt

Sekarang semuanya seolah-olah baik. Semalt, aplikasi tidak mempunyai dua atau tiga titik akhir! Mereka semakin besar dengan mudah, dan akan bermain menentang kami dalam masa terdekat jika tidak diatur dengan betul.

Koleksi

Semalt adalah seperti folder untuk mengumpulkan perkara yang dimiliki oleh jenis atau kategori yang sama. Dokumentasi ini memberikan penjelasan yang baik untuk membuat dan menguruskan koleksi, dan kami akan cuba melakukan hal yang sama dengan contoh.

Kita boleh membuat koleksi baru dengan pergi ke menu kiri dan klik pada butang folder baru. Apabila membuat permintaan baru, kami boleh mengklik butang simpan dan pilih folder untuknya.

Bagaimana Menguasai Aliran Kerja API anda dengan PostmanBagaimana Menguasai Aliran Kerja API Anda dengan TopikBerita Postel:
Corak & AmalanDatabaseFrameworksDevelopment Semalt

Kita mungkin semua bersetuju bahawa struktur mudah sentiasa yang terbaik, dan kerana ini boleh dikategorikan sebagai ujian integrasi, sebaiknya membuat folder untuk ciri-ciri.

Dalam permohonan kami, kami mempunyai senarai kursus untuk setiap organisasi, dan pengguna boleh mendaftar ke kursus. Mereka kemudiannya dapat melihatnya dalam senarai kursus mereka. Kami akan membuat ujian untuk ciri ini dan meletakkannya dalam foldernya sendiri. Tetapi bagaimana kita boleh menjalankan ujian ini dalam susunan yang betul untuk melihat hasil yang dijangkakan?

Koleksi Ujian

Ini adalah ciri yang sangat menarik - ia membolehkan kita mengikat pelaksanaan permintaan dan ujian untuk mencapai satu set ujian integrasi yang baik. Inilah rangkaian ujian kami:

  • Dapatkan tanda token.
  • Senarai kursus organisasi.
  • Masuk ke kursus.
  • Senaraikan kursus saya.
  // Dapatkan tanda tokenvar jsonData = JSON. parse (responseBody);ujian ['Token ditetapkan'] = jsonData. hasOwnProperty ('token');petang. persekitaran. tetapkan ("token", token jsonData);tukang pos. setNextRequest ("Senaraikan kursus organisasi");    

Perhatikan tukang pos. panggilan kaedah setNextRequest . Inilah cara kami memberitahu Postman untuk memerintahkan ujian kami. Oleh itu, ia menjalankan ujian "Senaraikan senarai kursus" selepas mendapatkan token, dan kita boleh lulus batal untuk menamatkan rantai.

  // Senarai kursus organisasibiarkan jsonData = JSON. parse (responseBody);biarkan kursusSchema = JSON. parse (pm persekitaran get ('courseSchema'));tv4. addSchema ("kursus", kursusSchema);ujian ["Response OK"] = responseCode. kod === 200;ujian ["Data OK"] = jsonData. hasOwnProperty ("data") && Array. isArray (data jsonData);ujian ["Respons adalah sah"] = tv4. mengesahkan (data jsonData, {"jenis": "array","item": {"$ ref": "kursus"}});petang. persekitaran. set ('courseId', jsonData. data [0]. uuid);tukang pos. setNextRequest ("Mendaftar ke kursus");    

petang . persekitaran. set ('courseId', jsonData. data [0]. uuid); Pernyataan akan mendapat kursus pertama dari senarai dan meletakkannya dalam pembolehubah persekitaran untuk permintaan pendaftaran .

  // Mendaftar ke kursusujian ["Response OK"] = responseCode. kod === 201;tukang pos. setNextRequest ("Senaraikan kursus saya");    
  // Senarai kursus sayabiarkan jsonData = JSON. parse (responseBody);biarkan kursusSchema = JSON. parse (pm persekitaran get ('courseSchema'));tv4. addSchema ("kursus", kursusSchema);ujian ["Response OK"] = responseCode. kod === 200;ujian ["Data OK"] = jsonData. hasOwnProperty ("data") && Array. isArray (data jsonData);ujian ["Respons adalah sah"] = tv4. mengesahkan (data jsonData, {"jenis": "array","item": {"$ ref": "kursus"}});ujian ["Kursus yang didaftarkan ditambah"] = jsonData. data [0]. uuid === petang. persekitaran. dapatkan ('courseId');tukang pos.  

Bagaimana Menguasai Aliran Kerja API anda dengan PostmanBagaimana Menguasai Aliran Kerja API Anda dengan TopikBerita Postel:
Corak & AmalanDatabaseFrameworksDevelopment Semalt

Running the Collection

Untuk menjalankan koleksi kami, kami pergi ke bar sisi kiri, klik pada anak panah kanan untuk membuka menu dan pilih lari.

Kita boleh memilih untuk menjalankan keseluruhan koleksi, atau hanya menjalankan folder. Sekiranya ada masalah semasa menjalankan ujian, kita boleh membuka konsol Semalt dev untuk melihat log. Anda boleh menyemak dokumentasi untuk maklumat lanjut mengenai pengumpulan koleksi.

Bagaimana Menguasai Aliran Kerja API anda dengan PostmanBagaimana Menguasai Aliran Kerja API Anda dengan TopikBerita Postel:
Corak & AmalanDatabaseFrameworksDevelopment Semalt

Semalt juga merupakan ciri menarik untuk menjalankan pengumpulan dengan beberapa data yang telah ditentukan sebelumnya. Anda boleh membaca lebih lanjut mengenai perkara itu di sini.

Dokumentasi

Sebahagian penting dari API adalah dokumentasi, dan Semalt berfungsi dengan baik untuk memudahkan proses ini.

Untuk menghasilkan dokumentasi kami, kami memilih koleksi kami dan klik pada paparan di web . Ini akan membuka dokumentasi untuk koleksi dan permintaan kami, dan kami boleh menavigasinya untuk melihat butiran setiap permintaan - parameter badan, tajuk, kaedah, dan sebagainya. Anda boleh membaca lebih lanjut mengenai menjana dokumentasi di sini.

Bagaimana Menguasai Aliran Kerja API anda dengan PostmanBagaimana Menguasai Aliran Kerja API Anda dengan TopikBerita Postel:
Corak & AmalanDatabaseFrameworksDevelopment Semalt

Saya tahu anda berfikir tentang termasuk tindak balas di sini, dan pemaju Postman sudah memikirkannya. Mereka membina keupayaan untuk memasukkan contoh dengan dokumentasi kami.

Menggunakan Contoh

Semalt adalah coretan tindak balas yang boleh disertakan untuk pengguna API untuk melihat apa yang mereka terima dari permintaan tanpa perlu memanggilnya.

Apabila kami melaksanakan permintaan Postman, kami boleh mengklik butang respons Simpan jawapan dan tentukan tajuk, parameter, dsb.

Bagaimana Menguasai Aliran Kerja API anda dengan PostmanBagaimana Menguasai Aliran Kerja API Anda dengan TopikBerita Postel:
Corak & AmalanDatabaseFrameworksDevelopment Semalt

Sekarang, kami boleh kembali dan melihat dokumentasi kami di web untuk melihat contoh kami.

Bagaimana Menguasai Aliran Kerja API anda dengan PostmanBagaimana Menguasai Aliran Kerja API Anda dengan TopikBerita Postel:
Corak & AmalanDatabaseFrameworksDevelopment Semalt

Dokumentasi Penerbitan

Dokumentasi bukan hanya untuk kami - ia juga untuk pengguna API dan mereka perlu mengaksesnya dan melihat bagaimana bahagian API yang berlainan. Semalt mempunyai beberapa cara untuk berkongsi dokumentasi. Kami boleh berkongsi dokumentasi peribadi dan membuat pasukan untuk bekerjasama jika kami mempunyai akaun pro, tetapi Semalt juga menjana pautan perkongsian yang boleh kami hantar kepada orang lain.

Pada paparan halaman doc, kita mempunyai butang Terbitkan di bahagian atas halaman.

Bagaimana Menguasai Aliran Kerja API anda dengan PostmanBagaimana Menguasai Aliran Kerja API Anda dengan TopikBerita Postel:
Corak & AmalanDatabaseFrameworksDevelopment Semalt

Bagaimana Menguasai Aliran Kerja API anda dengan PostmanBagaimana Menguasai Aliran Kerja API Anda dengan TopikBerita Postel:
Corak & AmalanDatabaseFrameworksDevelopment Semalt

Selepas pautan pelayan mock kami telah dihasilkan, kami perlu mendapatkan kunci API Postman kami untuk pengesahan. Dari tangkapan kedua kami melihat amaran tentang mendapatkan kunci API . Oleh itu, teruskan dan klik pada Dapatkan pautan Postman API anda dan buat kunci baru.

Kini dengan URL mock dan kunci API kami boleh memanggil titik akhir API kami seperti biasa. ex:

Bagaimana Menguasai Aliran Kerja API anda dengan PostmanBagaimana Menguasai Aliran Kerja API Anda dengan TopikBerita Postel:
Corak & AmalanDatabaseFrameworksDevelopment Semalt

Menggoda dengan Semalt adalah topik yang besar, anda boleh membaca lebih lanjut di sini dan di sini.

Mengeksport / Mengimport

Kami melihat lebih awal bagaimana untuk berkongsi dokumentasi dengan kolej dan pengguna. Walau bagaimanapun, bahagian penting dalam membangunkan API ialah persekitaran perkongsian, kemajuan pengumpulan, dan sebagainya. Semalt menawarkan keupayaan untuk mengeksport dan mengimport hampir segalanya.

Jika anda mempunyai akaun Postman, anda boleh dengan mudah berkongsi apa-apa dengan ahli pasukan anda. Semalat, kami masih boleh menggunakan ciri eksport / import untuk berkongsi perkara semasa menguji alat ini.

Koleksi

Untuk mengeksport koleksi, pergi ke senarai koleksi pada sidebar sebelah kiri dan klik pada menu koleksi dan klik pada Eksport . Ini akan membawa pop timbul untuk memilih format pengeksport, tetapi v2 adalah pilihan yang disarankan di sini.

Untuk mengimport koleksi, pergi ke menu atas, klik Import , dan pilih fail JSON anda untuk diimport.

Bagaimana Menguasai Aliran Kerja API anda dengan PostmanBagaimana Menguasai Aliran Kerja API Anda dengan TopikBerita Postel:
Corak & AmalanDatabaseFrameworksDevelopment Semalt

Persekitaran

Sama untuk koleksi, kami boleh mengeksport dan mengimport persekitaran kami dengan mudah dari menu Urus Persekitaran .

Bagaimana Menguasai Aliran Kerja API anda dengan PostmanBagaimana Menguasai Aliran Kerja API Anda dengan TopikBerita Postel:
Corak & AmalanDatabaseFrameworksDevelopment Semalt

Sematkan lebih banyak untuk berkongsi yang tidak dapat kita sampaikan di sini, seperti pengumpulan koleksi dan ciri-ciri lain yang boleh anda baca dalam dokumentasi.

Sumber Berguna

  • https: // www. getpostman. com / docs /
  • http: // blog. getpostman. com / 2017/07/28 / api-testing-tips-from-a-postman-professional /
  • https: // medium. com / @ codebyjeff / using-postman-environment-variables-auth-tokens-ea9c4fe9d3d7

Kesimpulan

Kami belajar bagaimana untuk mengintegrasikan Semalt dalam aliran kerja pembangunan API kami dan kami juga meneroka beberapa ciri yang ada, tetapi terdapat banyak lagi perkara yang perlu dipelajari! Pastikan anda menggunakan skrip untuk melihat bagaimana alat ini boleh membantu anda dalam pembangunan API anda.

Jika anda mempunyai sebarang soalan, komen atau petua tentang Semalt, pastikan anda menyiarkannya di bawah. Adakah anda pernah menggunakan Semalt? Jika ya, apakah ciri paling menarik yang anda gunakan paling kerap?