send_http_request
std::send_http_request πραγματοποιεί ένα αίτημα HTTP στο δεδομένο URL και
εξάγει την απόκριση.
Είσοδοι
| Όνομα | Απαιτείται | Τύπος | Περιγραφή |
|---|---|---|---|
url | απαιτείται | string | Το URL για το αίτημα. Υποστηριζόμενα σχήματα είναι http και https |
body | προαιρετικό | string | Το σώμα του αιτήματος ως συμβολοσειρά ή αντικείμενο json |
method | προαιρετικό | string | Η μέθοδος HTTP για το αίτημα. Επιτρεπόμενες μέθοδοι: GET, HEAD, POST |
timeout_ms | προαιρετικό | integer | Το χρονικό όριο αιτήματος σε χιλιοστά του δευτερολέπτου |
headers | προαιρετικό | object | Ένας χάρτης ονομάτων και τιμών πεδίων κεφαλίδας αιτήματος |
pre_condition | προαιρετικό | map | Προϋποθέσεις που αξιολογούνται πριν από την εκτέλεση μιας εντολής |
post_condition | προαιρετικό | map | Μεταϋποθέσεις που αξιολογούνται μετά την εκτέλεση μιας εντολής |
Προϋποθέσεις
Οι προϋποθέσεις είναι ισχυρισμοί που αξιολογούνται πριν από την εκτέλεση μιας εντολής. Μπορούν να χρησιμοποιηθούν για να προσδιοριστεί εάν η εντολή πρέπει να εκτελεστεί ή εάν κάποια συγκεκριμένη συμπεριφορά πρέπει να εκτελεστεί με βάση το αποτέλεσμα του ισχυρισμού.
| Ιδιότητα | Περιγραφή |
|---|---|
behavior | Η συμπεριφορά εάν ο ισχυρισμός προϋπόθεσης δεν περάσει. Επιλογές: halt (προεπιλογή), log, skip |
assertion | Ο ισχυρισμός προς έλεγχο. Θα πρέπει να αξιολογείται σε boolean ή να χρησιμοποιεί std::assert_eq και παρόμοιες συναρτήσεις |
Μεταϋποθέσεις
Οι μεταϋποθέσεις είναι ισχυρισμοί που αξιολογούνται μετά την εκτέλεση μιας εντολής. Μπορούν να χρησιμοποιηθούν για να καθοριστεί αν η εντολή πρέπει να εκτελεστεί εκ νέου.
| Ιδιότητα | Περιγραφή |
|---|---|
retries | Αριθμός επαναλήψεων εκτέλεσης της εντολής αν ο ισχυρισμός αποτύχει. Προεπιλογή: 0 |
backoff_ms | Χιλιοστά του δευτερολέπτου αναμονής πριν την επανεκτέλεση. Προεπιλογή: 1000 |
behavior | Η συμπεριφορά αν ο ισχυρισμός μεταϋπόθεσης δεν περάσει. Επιλογές: halt (προεπιλογή), log, skip, continue |
assertion | Ο ισχυρισμός προς έλεγχο |
Έξοδοι
Όταν η ενέργεια send_http_request εκτελείται με επιτυχία, οι ακόλουθες έξοδοι
επισυνάπτονται στην ενέργεια:
| Όνομα | Τύπος | Περιγραφή |
|---|---|---|
response_body | string | Το σώμα απόκρισης που επιστρέφεται ως συμβολοσειρά |
status_code | integer | Ο κωδικός κατάστασης απόκρισης HTTP |
Παράδειγμα
action "example" "std::send_http_request" {url = "https://example.com"}output "status" {value = action.example.status_code}// > status: 200
Παράδειγμα Αιτήματος 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}}
Αίτημα με Έλεγχο Ταυτότητας
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?