Le développement de plugins pour la passerelle étend les fonctionnalités principales d'une API Gateway, permettant de répondre à des besoins métier plus complexes et spécifiques. Cette rubrique explique comment développer des plugins de passerelle en Go et fournit des instructions pour le développement local et le débogage.
Higress est passé de la solution de compilation TinyGo 0.29 + Go 1.20 à la compilation WebAssembly (Wasm) native prise en charge par Go 1.24. Go 1.24 prend désormais en charge nativement la compilation de fichiers Wasm.
Si vous utilisiez auparavant TinyGo pour compiler des plugins, vous devez effectuer des ajustements pour migrer vers le mode de compilation Go 1.24. Ces ajustements incluent la modification des dépendances dans le fichier go.mod et le déplacement de la logique d'initialisation du plugin de la fonction main vers la fonction init. Pour un exemple concret, consultez la suite de cette rubrique.
Pour les plugins initialement implémentés avec TinyGo, tenez compte des ajustements de compatibilité suivants :
1. Si vous appelez un service externe lors de la phase de traitement des en-têtes et renvoyez type.ActionPause, vous devez modifier le type de retour en types.HeaderStopAllIterationAndWatermark. Pour un exemple d'implémentation, consultez l'exemple de plugin appelant un service externe présenté plus loin dans cette rubrique.
2. Si vous utilisiez la bibliothèque go-re2 en raison de la prise en charge incomplète de la bibliothèque regexp standard par TinyGo, vous devez la remplacer par le package regexp officiel de Go.
Prérequis
Installez Go.
Go
Guide d'installation officiel (version 1.24 ou ultérieure requise).
Les plugins compilés avec Go 1.24 nécessitent Cloud-native API Gateway version 2.1.5 ou ultérieure. Pour les versions antérieures de la passerelle, consultez Développer des plugins Wasm avec Go .
Windows
Téléchargez le fichier d'installation.
Ouvrez le fichier d'installation téléchargé pour lancer l'installation. Par défaut, Go s'installe dans le répertoire
Program FilesouProgram Files (x86).Une fois l'installation terminée, appuyez sur le raccourci clavier Win+R pour ouvrir la fenêtre Exécuter. Saisissez
cmdet cliquez sur OK pour ouvrir l'invite de commandes. Exécutez la commandego version. Si la commande affiche la version actuelle, l'installation a réussi.
macOS
Téléchargez le fichier d'installation.
Double-cliquez sur le fichier d'installation téléchargé pour lancer l'installation. Par défaut, Go s'installe dans le répertoire
/usr/local/go.Ouvrez le terminal et exécutez la commande
go version. Si la commande affiche la version actuelle, l'installation a réussi.
Linux
Téléchargez le fichier d'installation.
-
Exécutez les commandes suivantes pour installer Go.
-
Installez Go.
rm -rf /usr/local/go && tar -C /usr/local -xzf go1.24.4.linux-amd64.tar.gz -
Configurez la variable d'environnement.
export PATH=$PATH:/usr/local/go/bin Exécutez la commande
go version. Si la commande affiche la version actuelle, l'installation a réussi.
-