Les fonctions intégrées d'EdgeScript couvrent l'ensemble des opérations sur les nœuds de périphérie, depuis l'inspection des métadonnées de requête et la réécriture d'URL jusqu'au chiffrement des données et au contrôle du TTL du cache. Le tableau suivant répertorie les 13 catégories de fonctions ainsi que les fonctions disponibles pour chacune d'elles.
| Catégorie | Description | Fonctions |
|---|---|---|
| Fonctions logiques | Évaluez et combinez des conditions booléennes | and, or, not, eq, ne, null |
| Fonctions numériques | Effectuez des opérations arithmétiques et des comparaisons numériques | add, sub, mul, div, mod, gt, ge, lt, le, floor, ceil |
| Fonctions de chaîne | Manipulez, faites correspondre et convertissez des valeurs de chaîne | substr, concat, upper, lower, len, byte, match_re, capture_re, gsub_re, split, split_as_key, tohex, tostring, tochar, reverse, find, format, tobin, trim |
| Fonctions de dictionnaire | Lisez et écrivez des entrées de dictionnaire clé-valeur | set, get, foreach, del |
| Fonctions de traitement des requêtes | Modifiez les en-têtes de requête et de réponse, réécrivez les URL et contrôlez la sortie | add_req_header, del_req_header, add_rsp_header, del_rsp_header, encode_args, decode_args, rewrite, say, print, exit, get_rsp_header, add_rsp_cookie |
| Fonctions de limitation de débit | Limitez le débit d'envoi des données aux clients | limit_rate_after, limit_rate |
| Fonctions de cache | Remplacez le TTL du cache pour les réponses des nœuds de périphérie | set_cache_ttl |
| Fonctions temporelles | Obtenez et convertissez des horodatages dans divers formats | today, time, now, localtime, utctime, cookie_time, http_time, parse_http_time, unixtime |
| Fonctions d'algorithme de chiffrement | Chiffrez, déchiffrez et hachez des données à l'aide d'AES, SHA, HMAC et MD5 | aes_new, aes_enc, aes_dec, sha1, sha2, hmac, hmac_sha1, md5, md5_bin |
| Fonctions JSON | Encodez et décodez des données JSON | json_enc, json_dec |
| Fonctions diverses | Encodez et décodez des données à l'aide de l'encodage Base64 et URL, générez des valeurs aléatoires et calculez des sommes de contrôle | base64_enc, base64_dec, url_escape, url_unescape, rand, rand_hit, crc, tonumber, base64_enc_safe, base64_dec_safe, randomseed |
| Fonctions de tableau | Créez et manipulez des tableaux | arr_concat, arr_insert, arr_remove, arr_sort, arr_len |
| Fonctions de logique de requête | Inspectez les métadonnées de requête, y compris l'adresse IP du client, le FAI, la localisation géographique, l'URI, les en-têtes et les cookies | server_addr, server_port, client_addr, client_country, client_region, client_isp, ip_country, ip_region, ip_isp, req_uri, req_uri_basename, req_uri_ext, req_uri_seg, req_uri_arg, req_uri_query_string, req_scheme, req_method, req_host, req_user_agent, req_referer, req_cookie, req_first_x_forwarded, req_header, req_id |