Bagikan melalui


Mulai menggunakan Dev Proxy

Dev Proxy adalah alat baris perintah yang membantu Anda mensimulasikan perilaku dan kesalahan API cloud untuk membantu Anda membangun aplikasi yang tangguh.

Dalam tutorial ini, Anda mempelajari cara menginstal, menjalankan, dan mengonfigurasi Dev Proxy.

Jika Anda mengalami kesulitan, jangan ragu untuk menghubungi kami dengan memunculkan masalah baru dan kami dengan senang hati membantu Anda.

Menginstal Proksi Dev

Cara termampu untuk menginstal Dev Proxy adalah dengan menggunakan winget. Atau, Anda dapat menginstal Dev Proxy secara manual.

Untuk menginstal Dev Proxy menggunakan winget, jalankan perintah berikut:

winget install Microsoft.DevProxy --silent

Penting

Penginstal Dev Proxy menambahkan entri baru ke PATH. Untuk menggunakan Dev Proxy setelah penginstalan, Anda harus memulai ulang prompt perintah untuk memastikan bahwa variabel lingkungan PATH telah di-refresh.

Catatan

Untuk mencoba fitur pratinjau terbaru, instal versi beta Dev Proxy.

Untuk menginstal Dev Proxy menggunakan winget, jalankan perintah berikut:

winget install Microsoft.DevProxy.Beta --silent

Untuk menjalankan versi beta penggunaan Dev Proxy devproxy-beta

Cara termampu untuk menginstal Dev Proxy adalah dengan menggunakan Homebrew. Atau, Anda dapat menginstal Dev Proxy secara manual.

Untuk menginstal Dev Proxy menggunakan Homebrew, jalankan perintah berikut:

brew tap microsoft/dev-proxy
brew install dev-proxy

Catatan

Untuk mencoba fitur pratinjau terbaru, instal versi beta Dev Proxy.

Untuk menginstal Dev Proxy menggunakan Homebrew, jalankan perintah berikut:

brew tap microsoft/dev-proxy
brew install dev-proxy-beta

Untuk menjalankan versi beta penggunaan Dev Proxy devproxy-beta

Mulai Dev Proxy untuk pertama kalinya

Pertama kali Anda memulai Dev Proxy di komputer Anda, ada beberapa langkah yang harus diikuti untuk memastikan bahwa Dev Proxy dapat mencegat permintaan dari komputer Anda dan berhasil merespons. Anda tidak perlu mengulangi langkah-langkah ini setelah eksekusi pertama.

  1. Mulai Proksi Dev. Buka sesi prompt perintah. Masukkan devproxy dan tekan Enter.
  2. Sertifikat kepercayaan. Dev Proxy menginstal sertifikat bernama Dev Proxy CA. Peringatan muncul. Pilih Yes untuk mengonfirmasi bahwa Anda ingin menginstal sertifikat. Dev Proxy menggunakan sertifikat ini untuk mendekripsi lalu lintas HTTPS yang dikirim dari komputer Anda.
  3. Izinkan akses firewall. Windows Firewall memblokir proksi. Peringatan muncul. Pilih Allow access tombol untuk mengizinkan lalu lintas melalui firewall.
  1. Mulai Proksi Dev. Buka sesi prompt perintah. Masukkan devproxy dan tekan Enter.
  2. Sertifikat kepercayaan. Dev Proxy menginstal sertifikat bernama Dev Proxy CA, yang digunakannya untuk mendekripsi lalu lintas HTTPS yang dikirim dari komputer Anda. Peringatan muncul. Tekan y untuk mengonfirmasi bahwa Anda ingin mempercayai sertifikat.
  3. Terima koneksi masuk. Peringatan muncul. Pilih Allow untuk mengonfirmasi.

Perintah menampilkan output berikut:

8 error responses loaded from devproxy-errors.json
Listening on 127.0.0.1:8000...
Hotkeys: issue (w)eb request, (r)ecord, (s)top recording, (c)lear screen
Press CTRL+C to stop Dev Proxy

Secara default, Dev Proxy dikonfigurasi untuk:

  • Permintaan intersepsi yang dibuat ke titik akhir API Tempat Penampung JSON
  • Simulasikan respons kesalahan API dan pembatasan API dengan tingkat kegagalan 50%

Permintaan intersepsi

Dev Proxy akan mencegat permintaan yang dibuat ke URL yang diketahui dari aplikasi apa pun di komputer Anda. Saat permintaan terdeteksi, Dev Proxy meneruskan permintaan ke API (tidak mengambil tindakan), atau mengembalikan respons.

  • Kirim permintaan ke JSON Placeholder API dari baris perintah dan beralih kembali ke proses proksi untuk melihat output.

Di PowerShell, gunakan Invoke-WebRequest cmdlet untuk mengirim permintaan GET ke JSON Placeholder API.

Invoke-WebRequest -Uri https://jsonplaceholder.typicode.com/posts

Jika Anda menggunakan curl, kirim permintaan GET ke JSON Placeholder API menggunakan perintah berikut.

curl -ix http://localhost:8000 https://jsonplaceholder.typicode.com/posts

Anda juga dapat menggunakan klien API seperti Postman untuk mengirim permintaan GET ke https://jsonplaceholder.typicode.com/posts.

Entri ditampilkan dengan beberapa informasi dasar tentang permintaan masuk dan tindakan yang dilakukan Proksi Dev. Dev Proxy mensimulasikan respons kesalahan dengan peluang 50%. Jika permintaan Anda tidak mengembalikan kesalahan, Dev Proxy akan melewatinya.

 request     GET https://jsonplaceholder.typicode.com/posts
     api   ╭ Passed through
           ╰ GET https://jsonplaceholder.typicode.com/posts
  • Ulangi permintaan pengiriman ke JSON Placeholder API dari baris perintah, hingga respons kesalahan dikembalikan.
 request     GET https://jsonplaceholder.typicode.com/posts
     api   ╭ Passed through
           ╰ GET https://jsonplaceholder.typicode.com/posts
 request     GET https://jsonplaceholder.typicode.com/posts
   chaos   ╭ 403 Forbidden
           ╰ GET https://jsonplaceholder.typicode.com/posts

Saat Dev Proxy mengembalikan respons kesalahan, chaos label ditampilkan dalam entri.

  • Coba kirim permintaan ke titik akhir lain yang tersedia di JSON Placeholder API
    • https://jsonplaceholder.typicode.com/posts
    • https://jsonplaceholder.typicode.com/posts/1
    • https://jsonplaceholder.typicode.com/posts/1/comments
    • https://jsonplaceholder.typicode.com/comments?postId=1

Hentikan Proksi Dev dengan aman

Ketika Anda tidak lagi mengharuskan Dev Proxy berjalan, Anda harus selalu menghentikannya dengan aman.

  • Tekan Ctrl + C untuk menghentikan Proksi Dev dengan aman.

Jika Anda mematikan sesi prompt perintah, Dev Proxy tidak membatalkan pendaftaran dengan benar sebagai proksi sistem, dan Anda mungkin mengalami beberapa masalah umum.

Perbarui URL ke watch

Secara default, Dev Proxy dikonfigurasi untuk mencegat permintaan apa pun yang dibuat ke JSON Placeholder API. Anda dapat mengonfigurasi Dev Proxy untuk mencegat permintaan ke API HTTP apa pun.

  • Dalam perintah, jalankan brew list dev-proxy untuk menemukan folder penginstalan.
  • Buka folder penginstalan Proksi Dev di Finder.
  • Di folder penginstalan Proksi Dev, buka devproxyrc.json di editor teks.
  • urlsToWatch Temukan array .
"urlsToWatch": [
  "https://jsonplaceholder.typicode.com/*"
],

Array urlsToWatch mewakili URL yang diketahui. Dev Proxy mengawasi permintaan dari entri saat ini ke titik akhir apa pun. Entri menggunakan tanda bintang setelah URL sebagai wildcard. Menambahkan lebih banyak entri ke dalam array ini memperluas URL yang diwaspadai Oleh Proksi Dev.

Mari kita pertimbangkan bahwa Anda tidak ingin Dev Proxy mencegat permintaan yang dibuat ke titik akhir tertentu.

  • Tambahkan entri baru ke urlsToWatch array.
"urlsToWatch": [
  "!https://jsonplaceholder.typicode.com/posts/2",
  "https://jsonplaceholder.typicode.com/*"
],

Tanda seru di awal URL memberi tahu Dev Proxy untuk mengabaikan permintaan apa pun yang cocok dengan URL tersebut. Anda dapat mencampur dan mencocokkan tanda seru dan tanda bintang dalam URL.

  • Di baris perintah, masukkan devproxy dan tekan Enter untuk memulai Dev Proxy.
  • Kirim permintaan ke https://jsonplaceholder.typicode.com/posts/2 dari baris perintah dan lihat output.

Entri ditampilkan yang mengonfirmasi bahwa permintaan diabaikan dan diteruskan ke API.

request     GET https://jsonplaceholder.typicode.com/posts/2
     api   ╭ Passed through
           ╰ GET https://jsonplaceholder.typicode.com/posts/2

Urutan di mana URL tercantum dalam urlsToWatch array penting. Dev Proxy memproses URL ini secara berurutan. Saat URL cocok, URL tidak diproses lagi. Oleh karena itu, menempatkan URL terlebih dahulu memastikan bahwa permintaan diabaikan sebelum URL berikutnya diproses.

Mengubah tingkat kegagalan

Secara default, Dev Proxy dikonfigurasi untuk gagal permintaan dengan peluang 50% ke URL yang sedang diawasi. Anda dapat menambah atau mengurangi kemungkinan permintaan mengembalikan respons kesalahan.

Mari kita perbarui tingkat kegagalan sehingga setiap permintaan ke JSON Placeholder API mengembalikan respons kesalahan.

  • Di folder penginstalan Proksi Dev, buka devproxyrc.json di editor teks.
  • rate Temukan properti dan perbarui nilai dari 50 ke 100.

File devproxyrc.json berisi pengaturan konfigurasi yang digunakan saat Anda memulai Dev Proxy. Saat mengubah pengaturan konfigurasi, Anda harus selalu menghentikan dan memulai Dev Proxy agar perubahan tetap ada.

  • Di baris perintah, masukkan devproxy dan tekan Enter untuk memulai Dev Proxy.
  • Kirim permintaan ke JSON Placeholder API dari baris perintah dan lihat output.

Atau, Anda dapat mengganti pengaturan konfigurasi saat runtime dengan menggunakan --failure-rate opsi saat memulai Dev Proxy.

devproxy --failure-rate 100
  • Tekan Ctrl + C untuk menghentikan Proksi Dev dengan aman.

Mensimulasikan pembatasan

Secara default, Dev Proxy mengembalikan rentang respons kesalahan 400 dan 500 generik. Anda dapat menyesuaikan respons kesalahan ini dengan kebutuhan Anda sendiri.

Dev Proxy menggunakan plugin untuk mengaktifkan perilaku API yang berbeda, secara default, kami mengaktifkan dua plugin untuk Anda.

Mari kita ubah konfigurasi sehingga Dev Proxy selalu mengembalikan 429 Too Many requests respons kesalahan untuk mensimulasikan pembatasan.

Pertama mari kita temukan lokasi file yang berisi definisi kesalahan.

  • Di folder penginstalan Proksi Dev, buka devproxyrc.json di editor teks.
  • plugins Dalam array , temukan entri untuk plugin GenericRandomErrorPlugin. Perhatikan nilai configSection properti .
  • Lebih jauh ke bawah file, temukan genericRandomErrorPlugin objek . Perhatikan nilai errorsFile properti .

Tip

Lokasi file kesalahan juga ditampilkan dalam output saat Anda memulai Dev Proxy.

  • Di folder penginstalan Proksi Dev, buka devproxy-errors.json di editor teks.
  • Hapus semua entri respons dalam responses array, kecuali untuk 429 respons.
{
  "$schema": "https://raw.githubusercontent.com/microsoft/dev-proxy/main/schemas/v0.17.0/genericrandomerrorplugin.schema.json",
  "responses": [
    {
      "statusCode": 429,
      "body": {
        "message": "Too Many Requests",
        "details": "The user has sent too many requests in a given amount of time (\"rate limiting\")."
      },
      "headers": {
        "Retry-After": "@dynamic"
      }
    }
  ]
}
  • Di baris perintah, masukkan devproxy dan tekan Enter untuk memulai Dev Proxy.
  • Kirim permintaan ke JSON Placeholder API dari baris perintah dan lihat output.
 request     GET https://jsonplaceholder.typicode.com/posts
   chaos   ╭ 429 TooManyRequests
           ╰ GET https://jsonplaceholder.typicode.com/posts
  • Tekan Ctrl + C untuk menghentikan Proksi Dev dengan aman.

Langkah selanjutnya

Pelajari cara menggunakan Dev Proxy untuk mensimulasikan kesalahan acak untuk aplikasi Anda sendiri.