HTTP2 – Blok pro generování požadavků HTTP
Symbol blokuPotřebná licence: ADVANCED
Popis funkce
Blok HTTP2 vykoná jednorázový HTTP požadavek. Cílová adresa (URL) je
definována parametrem url a vstupem urldata. Konečná URL je vytvořena tak, že
vstup urldata je přidán k parametru url. Vstup header může být použit pro deklaraci
dalších hlavičkových polí.
HTTP požadavek je spuštěn na náběžnou hranu (offon) na vstupu TRG. Poté je výstup BUSY nastaven na on dokud není požadavek dokončen, což je signalizováno výstupem DONE=on. V případě chyby se na výstupu ERROR nastaví hodnota on. Výstup errId nese poslední chybu identifikovanou systémovým kódem chyby REXYGEN. Výstup hterror zobrazuje kód stavu HTTP. Všechna data poslaná serverem klientovi jsou uložena ve výstupu data. Všechny chybové výstupy jsou resetovány, když je nový HTTP požadavek spuštěn na vstupu TRG.
Blok může být spuštěn v blokovacím nebo neblokovacím režimu, což je specifikováno parametrem BLOCKING. V blokovacím režimu je vykonání úlohy pozastaveno, dokud požadavek neskončí. V neblokovacím režimu blok vykoná pouze jednu operaci v závislosti na dostupných datech a vykonání úlohy není blokováno. Doporučuje se vždy spouštět blok HTTP v neblokovacím režimu. Je však nutné zmínit, že na různých operačních systémech některé operace nelze provést v neblokovacím režimu, takže buďte opatrní a nepoužívejte tento blok v rychlých úlohách (QTASK) nebo v úlohách s krátkou dobou vykonání. Nejlepší podpora neblokovacího provozu je na operačním systému GNU/Linux. Maximální doba trvání požadavku provedeného blokem HTTP je specifikována parametrem timeout.
Blok podporuje ověření uživatele pomocí základní metody ověřování HTTP. Uživatelské jméno a heslo lze specifikovat parametry user a password. Blok také podporuje zabezpečený HTTP (HTTPS). Je také možné nechat blok ověřit certifikát serveru nastavením parametru VERIFY. SSL certifikát serveru nebo důvěryhodný certifikační orgán serveru musí být uložen v parametru certificate ve formátu PEM. Blok nepodporuje žádné uložení certifikátů.
Parametry postmime a acceptmime specifikují MIME kódování dat odesílaných na server nebo očekávané kódování HTTP odpovědi.
Parametry nmax, postmax a datamax specifikují maximální velikosti bufferů alokovaných blokem. Parametr nmax je maximální velikost libovolného řetězce. Parametr postmax specifikuje maximální velikost postdata. Parametr datamax specifikuje maximální velikost data.
Tento blok nepropaguje kvalitu signálu. Více informací je uvedeno v sekci 1.4.
Vstup
postdata | Data vložená do HTTP požadavku | String |
urldata | Data připojená k URL adrese | String |
header | Uživatelské položky hlavičky | String |
TRG | Spuštění zvolené akce | Bool |
Parametr
url | URL adresa pro odeslání HTTP požadavku | String |
method | Typ HTTP požadavku 1 | Long (I32) |
|
|
|
user | Uživatelské jméno | String |
password | Heslo | String |
certificate | Certifikát pro autentizaci | String |
VERIFY | Povolení verifikace serveru (platnost certifikátu) | Bool |
postmime | Typ kódování pro požadavek POST application/json | String |
acceptmime | Typ kódování pro požadavek GET application/json | String |
timeout | Povolená doba pro dokončení operace 5.0 | Double (F64) |
BLOCKING | Čekání na dokončení operace | Bool |
nmax | Rezervovaná paměť pro řetězec 0 65520 | Long (I32) |
postmax | postmax 128 65520 4096 | Long (I32) |
datamax | Alokovaná paměť pro odpověď na příkaz HTTP 128 10000000 64000 | Long (I32) |
Výstup
data | Data z odpovědi | String |
BUSY | Odesílání HTTP požadavku | Bool |
DONE | HTTP požadavek byl zpracován | Bool |
ERROR | Příznak chyby | Bool |
errId | Kód chyby | Error |
hterror | HTTP odpověď | Long (I32) |
[Předchozí] [Na začátek] [Výše] [Další]
2024 © REX Controls s.r.o., www.rexygen.com