send_http_request
std::send_http_request membuat permintaan HTTP ke URL yang diberikan dan
mengekspor responsnya.
Input
| Name | Required | Type | Description |
|---|---|---|---|
url | wajib | string | URL untuk permintaan. Skema yang didukung adalah http dan https |
body | opsional | string | Isi permintaan sebagai string atau objek json |
method | opsional | string | Metode HTTP untuk permintaan. Metode yang diizinkan: GET, HEAD, POST |
timeout_ms | opsional | integer | Batas waktu permintaan dalam milidetik |
headers | opsional | object | Peta nama dan nilai bidang header permintaan |
pre_condition | opsional | map | Pra-kondisi yang dievaluasi sebelum perintah dijalankan |
post_condition | opsional | map | Pasca-kondisi yang dievaluasi setelah perintah dijalankan |
Pra-kondisi
Pra-kondisi adalah pernyataan yang dievaluasi sebelum perintah dijalankan. Pra-kondisi dapat digunakan untuk menentukan apakah perintah harus dijalankan atau apakah perilaku tertentu harus dijalankan berdasarkan hasil pernyataan tersebut.
| Property | Description |
|---|---|
behavior | Perilaku jika pernyataan pra-kondisi tidak lolos. Opsi: halt (default), log, skip |
assertion | Pernyataan yang akan diperiksa. Harus menghasilkan nilai boolean atau menggunakan std::assert_eq dan fungsi serupa |
Post-conditions
Post-conditions adalah pernyataan yang dievaluasi setelah sebuah perintah dieksekusi. Pernyataan ini dapat digunakan untuk menentukan apakah perintah harus dieksekusi ulang.
| Property | Description |
|---|---|
retries | Jumlah kali perintah dieksekusi ulang jika pernyataan gagal. Default: 0 |
backoff_ms | Milidetik yang ditunggu sebelum mengeksekusi ulang. Default: 1000 |
behavior | Perilaku yang diterapkan jika pernyataan post-condition tidak terpenuhi. Opsi: halt (default), log, skip, continue |
assertion | Pernyataan yang akan diperiksa |
Outputs
Ketika aksi send_http_request berhasil dieksekusi, output berikut dilampirkan
pada aksi tersebut:
| Name | Type | Description |
|---|---|---|
response_body | string | Isi respons yang dikembalikan sebagai string |
status_code | integer | Kode status respons HTTP |
Contoh
action "example" "std::send_http_request" {url = "https://example.com"}output "status" {value = action.example.status_code}// > status: 200
Contoh Permintaan POST
action "create_resource" "std::send_http_request" {description = "Create a new resource"url = "https://api.example.com/resources"method = "POST"headers = {"Content-Type" = "application/json"}body = {"name" = variable.name,"value" = variable.value}}
Permintaan dengan Autentikasi
action "api_call" "std::send_http_request" {description = "Fetch data from API"url = "https://api.example.com/data"method = "GET"headers = {"Authorization" = "Bearer ${variable.token}"}}output "response" {value = action.api_call.response_body}output "status" {value = action.api_call.status_code}
Is this page helpful?