Solana DokümantasyonuKod Olarak AltyapıStandart Kütüphane

HTTP Eylemleri

send_http_request

std::send_http_request, belirtilen URL'ye bir HTTP isteği gönderir ve yanıtı dışa aktarır.

Girdiler

AdZorunluTürAçıklama
urlzorunlustringİstek için URL. Desteklenen şemalar: http ve https
bodyisteğe bağlıstringDize veya JSON nesnesi olarak istek gövdesi
methodisteğe bağlıstringİstek için HTTP Yöntemi. İzin verilen yöntemler: GET, HEAD, POST
timeout_msisteğe bağlıintegerMilisaniye cinsinden istek zaman aşımı
headersisteğe bağlıobjectİstek başlığı alan adları ve değerlerinin haritası
pre_conditionisteğe bağlımapBir komut yürütülmeden önce değerlendirilen ön koşullar
post_conditionisteğe bağlımapBir komut yürütüldükten sonra değerlendirilen son koşullar

Ön Koşullar

Ön koşullar, bir komut yürütülmeden önce değerlendirilen onaylardır. Komutun yürütülüp yürütülmeyeceğini veya onayın sonucuna göre belirli bir davranışın uygulanıp uygulanmayacağını belirlemek için kullanılabilirler.

ÖzellikAçıklama
behaviorÖn koşul onayı başarısız olduğunda gerçekleşecek davranış. Seçenekler: halt (varsayılan), log, skip
assertionKontrol edilecek onay. Boolean olarak değerlendirilmeli veya std::assert_eq ve benzeri fonksiyonları kullanmalıdır

Ön Koşullar Sonrası

Son koşullar, bir komut yürütüldükten sonra değerlendirilen doğrulamalardır. Komutun yeniden yürütülüp yürütülmemesi gerektiğini belirlemek için kullanılabilirler.

ÖzellikAçıklama
retriesDoğrulama başarısız olursa komutu yeniden yürütme sayısı. Varsayılan: 0
backoff_msYeniden yürütmeden önce beklenecek milisaniye. Varsayılan: 1000
behaviorSon koşul doğrulaması geçmezse uygulanacak davranış. Seçenekler: halt (varsayılan), log, skip, continue
assertionKontrol edilecek doğrulama

Çıktılar

send_http_request eylemi başarıyla yürütüldüğünde, aşağıdaki çıktılar eyleme eklenir:

AdTürAçıklama
response_bodystringDize olarak döndürülen yanıt gövdesi
status_codeintegerHTTP yanıt durum kodu

Örnek

action "example" "std::send_http_request" {
url = "https://example.com"
}
output "status" {
value = action.example.status_code
}
// > status: 200

POST İstek Örneği

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
}
}

Kimlik Doğrulamalı İstek

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?

İçindekiler

Sayfayı Düzenle
© 2026 Solana Vakfı. Tüm hakları saklıdır.