Menerima dan menanggapi panggilan HTTPS masuk ke alur kerja di Azure Logic Apps
Berlaku untuk: Azure Logic Apps (Konsumsi + Standar)
Panduan cara ini menunjukkan membuat alur kerja aplikasi logika yang dapat menerima dan menangani permintaan HTTPS masuk atau panggilan dari layanan lain menggunakan pemicu bawaan Permintaan. Saat alur kerja Anda menggunakan pemicu ini, Anda kemudian dapat merespons permintaan HTTPS dengan menggunakan tindakan bawaan Respons.
Catatan
Tindakan Respons hanya berfungsi saat Anda menggunakan pemicu Permintaan .
Misalnya, daftar ini menjelaskan beberapa tugas yang dapat dilakukan alur kerja Anda saat Anda menggunakan tindakan Pemicu permintaan dan Respons:
Terima dan respons permintaan HTTPS untuk data dalam database lokal.
Menerima dan menanggapi permintaan HTTPS yang dikirim dari alur kerja aplikasi logika lain.
Memicu eksekusi alur kerja saat peristiwa webhook eksternal terjadi.
Untuk menjalankan alur kerja Anda dengan mengirim permintaan keluar atau keluar, gunakan pemicu bawaan HTTP atau tindakan bawaan HTTP.
Prasyarat
Akun dan langganan Azure. Jika Anda tidak memiliki langganan, Anda bisa mendaftar untuk mendapatkan Azure akun gratis.
Alur kerja aplikasi logika tempat Anda ingin menerima permintaan HTTPS masuk. Untuk memulai alur kerja Anda dengan pemicu Permintaan , Anda harus memulai dengan alur kerja kosong. Untuk menggunakan tindakan Respons, alur kerja Anda harus dimulai dengan pemicu Permintaan .
Instal atau gunakan alat yang dapat mengirim permintaan HTTP untuk menguji solusi Anda, misalnya:
- Visual Studio Code dengan ekstensi dari Visual Studio Marketplace
- PowerShell Invoke-RestMethod
- Microsoft Edge - Alat Konsol Jaringan
- Bruno
- curl
Perhatian
Untuk skenario di mana Anda memiliki data sensitif, seperti kredensial, rahasia, token akses, kunci API, dan informasi serupa lainnya, pastikan untuk menggunakan alat yang melindungi data Anda dengan fitur keamanan yang diperlukan, berfungsi offline atau lokal, tidak menyinkronkan data Anda ke cloud, dan tidak mengharuskan Anda masuk ke akun online. Dengan cara ini, Anda mengurangi risiko sekeliling mengekspos data sensitif ke publik.
Menambahkan pemicu Permintaan
Pemicu Permintaan membuat titik akhir yang dapat dipanggil secara manual yang hanya menangani permintaan masuk melalui HTTPS. Saat penelepon mengirim permintaan ke titik akhir ini, pemicu Permintaan diaktifkan dan menjalankan alur kerja. Untuk informasi tentang cara memanggil pemicu ini, tinjau Alur kerja Panggilan, pemicu, atau sarang dengan titik akhir HTTPS di Azure Logic Apps.
Di portal Azure, buka aplikasi logika Konsumsi dan alur kerja kosong di perancang.
Pada perancang, ikuti langkah-langkah umum ini untuk menemukan dan menambahkan pemicu bawaan Permintaan bernama Saat permintaan HTTP diterima.
Setelah kotak informasi pemicu muncul, berikan informasi berikut sesuai kebutuhan:
Nama properti Nama properti JSON Wajib Deskripsi URL POSTINGAN HTTP {none} Ya URL titik akhir yang dihasilkan setelah Anda menyimpan alur kerja dan digunakan untuk mengirim permintaan yang memicu alur kerja Anda. Skema JSON Isi Permintaan schema
No Skema JSON yang menjelaskan properti dan nilai dalam isi permintaan masuk. Desainer menggunakan skema ini untuk menghasilkan token untuk properti dalam permintaan. Dengan begitu, alur kerja Anda dapat mengurai, menggunakan, dan meneruskan output dari pemicu Permintaan ke alur kerja Anda.
Jika Anda tidak memiliki skema JSON, Anda dapat menghasilkan skema dari payload sampel dengan menggunakan Payload sampel Penggunaan untuk menghasilkan kemampuan skema .Contoh berikut menunjukkan contoh skema JSON:
Contoh berikut menunjukkan contoh lengkap skema JSON:
{ "type": "object", "properties": { "account": { "type": "object", "properties": { "name": { "type": "string" }, "ID": { "type": "string" }, "address": { "type": "object", "properties": { "number": { "type": "string" }, "street": { "type": "string" }, "city": { "type": "string" }, "state": { "type": "string" }, "country": { "type": "string" }, "postalCode": { "type": "string" } } } } } } }
Saat Anda memasukkan skema JSON, perancang menampilkan pengingat untuk menyertakan header Jenis Konten dalam permintaan Anda dan mengatur nilai header tersebut ke aplikasi/json. Untuk informasi selengkapnya, lihat Menangani jenis konten.
Contoh berikut menunjukkan bagaimana header Tipe Konten muncul dalam format JSON:
{ "Content-Type": "application/json" }
Untuk menghasilkan skema JSON yang didasarkan pada muatan (data) yang diharapkan, Anda dapat menggunakan alat seperti JSONSchema.net, atau Anda dapat mengikuti langkah-langkah berikut:
Di pemicu Permintaan, pilih Gunakan sampel payload untuk menghasilkan skema.
Masukkan contoh muatan, dan pilih Selesai.
Contoh berikut menunjukkan contoh payload:
{ "account": { "name": "Contoso", "ID": "12345", "address": { "number": "1234", "street": "Anywhere Street", "city": "AnyTown", "state": "AnyState", "country": "USA", "postalCode": "11111" } } }
Untuk memeriksa apakah panggilan masuk memiliki isi permintaan yang cocok dengan skema yang Anda tentukan, ikuti langkah-langkah berikut:
Untuk menerapkan pesan masuk agar memiliki bidang yang sama persis dengan yang dijelaskan skema Anda, dalam skema Anda, tambahkan properti
required
dan tentukan bidang yang diperlukan.addtionalProperties
Tambahkan properti , dan atur nilai kefalse
.Misalnya, skema berikut menentukan bahwa pesan masuk harus memiliki bidang
msg
dan bukan bidang lainnya:{ "properties": { "msg": { "type": "string" } }, "type": "object", "required": ["msg"], "additionalProperties": false }
Di bilah Judul pemicu permintaan , pilih tombol elipsis (...).
Di pengaturan pemicu, aktifkan Validasi Skema, danpilih Selesai.
Jika isi permintaan panggilan masuk tidak cocok dengan skema Anda, pemicu mengembalikan kesalahan Permintaan Buruk HTTP 400.
Untuk menambahkan properti atau parameter lain ke pemicu, buka daftar Tambahkan parameter baru, dan pilih parameter yang ingin Anda tambahkan.
Nama properti Nama properti JSON Wajib Deskripsi Metode method
No Metode yang harus digunakan permintaan masuk untuk memanggil aplikasi logika Jalur relatif relativePath
No Jalur relatif untuk parameter yang dapat diterima URL endpoint aplikasi logika Contoh berikut menambahkan properti Metode :
Properti Metode muncul di pemicu sehingga Anda dapat memilih metode dari daftar.
Saat Anda siap, simpan alur kerja Anda. Di bar alat perancang, pilih Simpan.
Langkah ini menghasilkan URL yang dapat Anda gunakan untuk mengirim permintaan yang memicu alur kerja.
Untuk menyalin URL yang dihasilkan, pilih ikon salin di samping URL.
Catatan
Jika Anda ingin menyertakan simbol hash atau pound (#) dalam URI saat melakukan panggilan ke pemicu Permintaan , gunakan versi yang dikodekan ini sebagai gantinya:
%25%23
Sekarang, lanjutkan membangun alur kerja Anda dengan menambahkan tindakan lain sebagai langkah berikutnya. Misalnya, Anda dapat menanggapi permintaan dengan menambahkan tindakan Respons, yang dapat Anda gunakan untuk mengembalikan respons yang dikustomisasi dan dijelaskan nanti di artikel ini.
Catatan
Alur kerja Anda membuat permintaan masuk tetap terbuka hanya untuk waktu yang terbatas. Dengan asumsi bahwa alur kerja Anda juga menyertakan tindakan Respons, jika alur kerja Anda tidak mengembalikan respons ke pemanggil setelah waktu ini kedaluwarsa, alur kerja Anda mengembalikan status BATAS WAKTU GATEWAY 504 ke pemanggil. Jika alur kerja Anda tidak menyertakan tindakan Respons, alur kerja Anda segera mengembalikan status 202 DITERIMA ke pemanggil.
Untuk informasi tentang keamanan, autentikasi, dan enkripsi untuk panggilan masuk ke alur kerja Anda, seperti Keamanan Lapisan Transportasi (TLS), yang sebelumnya dikenal sebagai Secure Sockets Layer (SSL), OAuth dengan MICROSOFT Entra ID, Shared Access Signatures (SAS), mengekspos sumber daya aplikasi logika Anda dengan Azure API Management, atau membatasi alamat IP yang berasal dari panggilan masuk, lihat Akses dan data aman - Akses untuk panggilan masuk ke pemicu berbasis permintaan.
Output pemicu
Tabel berikut mencantumkan output dari pemicu Permintaan :
Nama properti JSON | Jenis data | Deskripsi |
---|---|---|
header | Objek | Objek JSON yang menjelaskan header dari permintaan |
body | Objek | Objek JSON yang menjelaskan isi tubuh dari permintaan |
Tambahkan tindakan Respons
Saat Anda menggunakan pemicu Permintaan untuk menerima permintaan masuk, Anda dapat memodelkan respons dan mengirim hasil payload kembali ke pemanggil dengan menggunakan tindakan bawaan Respons, yang hanya berfungsi dengan pemicu Permintaan. Kombinasi ini dengan tindakan Pemicu permintaan dan Respons membuat pola respons permintaan. Kecuali untuk loop Foreach di dalam dan Loop Until, dan cabang paralel, Anda dapat menambahkan tindakan Respons di mana saja di alur kerja Anda.
Penting
Jika tindakan Respons Anda menyertakan header berikut, Azure Logic Apps secara otomatis menghapus header ini dari pesan respons yang dihasilkan tanpa menampilkan peringatan atau kesalahan apa pun. Azure Logic Apps tidak akan menyertakan header ini, meskipun layanan tidak akan menghentikan Anda menyimpan alur kerja yang memiliki tindakan Respons dengan header ini.
Allow
Content-*
header kecuali untukContent-Disposition
,Content-Encoding
, andContent-Type
dan ketika Anda menggunakan operasi POST dan PUT, tetapi tidak disertakan untuk operasi GETCookie
Expires
Last-Modified
Set-Cookie
Transfer-Encoding
Jika Anda memiliki satu atau beberapa tindakan Respons dalam alur kerja yang kompleks dengan cabang, pastikan alur kerja memproses setidaknya satu tindakan Respons selama runtime. Jika tidak, jika semua tindakan Respons dilewati, pemanggil menerima kesalahan Gateway Buruk 502, meskipun alur kerja berhasil diselesaikan.
Dalam alur kerja stateless aplikasi logika Standar, tindakan Respons harus muncul terakhir di alur kerja Anda. Jika tindakan muncul di tempat lain, Azure Logic Apps masih tidak akan menjalankan tindakan hingga semua tindakan lain selesai berjalan.
Pada perancang alur kerja, ikuti langkah-langkah umum ini untuk menemukan dan menambahkan tindakan bawaan Respons bernama Respons.
Untuk kesederhanaan, contoh berikut menunjukkan pemicu Permintaan yang diciutkan.
Dalam kotak informasi tindakan, tambahkan nilai yang diperlukan untuk pesan respons.
Nama properti Nama properti JSON Wajib Deskripsi Kode status statusCode
Ya Kode status yang akan dikembalikan dalam respons Header headers
No Objek JSON yang menjelaskan satu atau beberapa header untuk disertakan dalam respons Isi body
No Isi respons Saat Anda memilih di dalam bidang teks apa pun, daftar konten dinamis akan terbuka secara otomatis. Anda kemudian dapat memilih token yang mewakili output yang tersedia dari langkah-langkah sebelumnya dalam alur kerja. Properti dari skema yang Anda tentukan juga muncul dalam daftar konten dinamis ini. Anda dapat memilih properti ini untuk digunakan dalam alur kerja Anda.
Misalnya, di bidang Header , sertakan Content-Type sebagai nama kunci, dan atur nilai kunci ke application/json seperti yang disebutkan sebelumnya dalam artikel ini. Untuk kotak Isi, Anda dapat memilih output isi pemicu dari daftar konten dinamis.
Untuk menampilkan header dalam format JSON, pilih Beralih ke tampilan teks.
Untuk menambahkan lebih banyak properti untuk tindakan, seperti skema JSON untuk isi respons, dari daftar Tambahkan parameter baru, pilih parameter yang ingin Anda tambahkan.
Setelah selesai, simpan alur kerja. Di bar alat perancang, pilih Simpan.
Menguji alur kerja
Untuk memicu alur kerja Anda, kirim permintaan HTTP ke URL yang dihasilkan untuk pemicu Permintaan , termasuk metode yang diharapkan pemicu Permintaan , dengan menggunakan alat permintaan HTTP Anda dan instruksinya.
Untuk informasi selengkapnya tentang definisi JSON yang mendasar pemicu dan cara memanggil pemicu ini, lihat topik ini, Meminta jenis pemicu dan Memanggil, memicu, atau menumpuk alur kerja dengan titik akhir HTTP di Azure Logic Apps.
Keamanan dan autentikasi
Dalam alur kerja aplikasi logika Standar yang dimulai dengan pemicu Permintaan (tetapi bukan pemicu webhook), Anda dapat menggunakan provisi Azure Functions untuk mengautentikasi panggilan masuk yang dikirim ke titik akhir yang dibuat oleh pemicu tersebut dengan menggunakan identitas terkelola. Ketentuan ini dikenal juga sebagai "Easy Auth". Untuk informasi selengkapnya, tinjau Alur kerja pemicu di aplikasi logika Standar dengan Easy Auth.
Untuk informasi selengkapnya tentang keamanan, otorisasi, dan enkripsi untuk panggilan masuk ke alur kerja aplikasi logika Anda, seperti Keamanan Lapisan Transportasi (TLS), yang sebelumnya dikenal sebagai Secure Sockets Layer (SSL), Microsoft Entra ID Open Authentication (Microsoft Entra ID OAuth), mengekspos aplikasi logika Anda dengan Azure API Management, atau membatasi alamat IP yang berasal dari panggilan masuk, lihat Akses dan data aman - Akses untuk panggilan masuk ke pemicu berbasis permintaan.