easyopen est une plate-forme d'interface ouverte simple et facile à utiliser. La plate-forme encapsule des fonctions couramment utilisées telles que la vérification des paramètres et le retour des résultats. Les développeurs n'ont qu'à implémenter le code métier.
La fonction d'easyopen est similaire à celle de la plateforme ouverte Taobao. Toutes ses interfaces ne fournissent qu'une seule URL et les différentes entreprises se distinguent par des paramètres. L'avantage est que la gestion des URL de l'interface est pratique et que l'administrateur de la plateforme n'a qu'à gérer les paramètres de l'interface. Le nombre de paramètres étant connu, cela permet un degré élevé d’encapsulation. Après l'encapsulation, les développeurs de plate-forme n'ont qu'à écrire du code métier et d'autres fonctions peuvent être complétées via la configuration.
Grâce à la fonction d'annotation de Java et à la gestion des bean du conteneur Spring, notre plateforme à interface ouverte est née.
1. Cela fonctionne immédiatement. Vous pouvez démarrer le service directement après avoir écrit le code commercial et aucune autre configuration n'est requise.
2. Vérification automatique des paramètres, prenant en charge la vérification internationale des paramètres (JSR-303).
3. La fonction de vérification et la fonction de retour des résultats sont mises en œuvre indépendamment, ce qui facilite la mise en œuvre ou l'expansion personnalisée.
4. Utilisez des annotations pour définir les interfaces, rendant ainsi la maintenance simple et pratique.
5. Prise en charge du retour de message internationalisé i18n.
6. Générez automatiquement des pages de documentation, similaires à swagger.
7. Utilisez des signatures numériques pour la vérification des paramètres. Pour l'algorithme de signature, voir : easyopen signature algorithm.txt.
8. Utilisez le formulaire appKey-secret pour accéder à la plateforme, c'est-à-dire que vous devez fournir une appKey et un secret à la partie qui accède.
Algorithme de chiffrement (MD5, AES, RSA)
Netty (codec, connexion longue, déconnexion et reconnexion)
Limitation de courant (stratégie de compartiment à fuites, stratégie de compartiment à jetons)
Autorisations (RBAC, vérification)
session (autonome, distribuée)
Annotations (génération de documents)
jeton (jwt, accessToken)
SDK (Java, C#, JavaScript)
Capture d'écran du centre de configuration
Page de documentation
Définir l'interface
@Api(name = "goods.get")public Goods getGoods(GoodsParam param) { Goods marchandises = new Goods(); marchandises.setId(1L); marchandises.setGoods_name("Apple iPhoneX"); (8000)); retourner les marchandises ;}
Demander des données
{ "name": "goods.get", "version": "", "app_key": "test", "data": "%7B%22goodsPrice%22%3A%22%22%2C%22goods_name%22% 3A%22iphoneX%22%7D", "horodatage": "2018-03-22 13:48:58", "format": "json", "sign": "C946ACA5AC95B1790511764A10E675B7"}
Retourner les résultats
{ "code": "0", "data": { "goods_name": "Apple iPhoneX", "id": 1, "price": 8000 }}
easyopen : easyopen : code de base
configuration easyopen : centre de configuration [facultatif]
easyopen-demo : démo du serveur d'interface (y compris springboot, springmvc)
easyopen-ext : package d'extension (fournissant des fonctions améliorées telles que des disjoncteurs et des déclassements)
easyopen-sdk : SDK correspondant à l'interface (incluant Java, C#, Javascript)
easyopen-starter : démarreur correspondant à springboot
develop-doc : documentation de développement
1. Démarrez easyopen-server-manual sous easyopen-demo (le code commercial se trouve dans GoodsApi.java)
2. Exécutez SdkTest.java dans sdk-java sous easyopen-sdk