easyopen es una plataforma de interfaz abierta simple y fácil de usar. La plataforma encapsula funciones de uso común, como la verificación de parámetros y la devolución de resultados. Los desarrolladores solo necesitan implementar el código comercial.
La función de easyopen es similar a la de la plataforma abierta Taobao. Todas sus interfaces solo proporcionan una URL y las diferentes empresas se distinguen mediante parámetros. La ventaja de esto es que la gestión de URL de la interfaz es conveniente y el administrador de la plataforma solo necesita mantener los parámetros de la interfaz. Dado que se conoce el número de parámetros, esto permite un alto grado de encapsulación. Después de la encapsulación, los desarrolladores de plataformas solo necesitan escribir código comercial y otras funciones se pueden completar mediante la configuración.
Gracias a la función de anotación de Java y la gestión de beans del contenedor Spring, nació nuestra plataforma de interfaz abierta.
1. Funciona de inmediato. Puede iniciar el servicio directamente después de escribir el código comercial y no se requiere ninguna otra configuración.
2. Verificación automática de parámetros, compatible con la verificación de parámetros internacionales (JSR-303).
3. La función de verificación y la función de devolución de resultados se implementan de forma independiente, lo que facilita la implementación o expansión personalizada.
4. Utilice anotaciones para definir interfaces, haciendo que el mantenimiento sea simple y conveniente.
5. Admite devolución de mensajes internacionalizados i18n.
6. Generar automáticamente páginas de documentación, similar a swagger.
7. Utilice firmas digitales para verificar los parámetros. Para conocer el algoritmo de firma, consulte: algoritmo de firma easyopen.txt.
8. Utilice el formulario appKey-secret para acceder a la plataforma, es decir, debe proporcionar una appKey y un secreto a la parte que accede.
Algoritmo de cifrado (MD5, AES, RSA)
Netty (códec, conexión larga, desconexión y reconexión)
Limitación actual (estrategia de depósito con fugas, estrategia de depósito de tokens)
Permisos (RBAC, verificación)
sesión (independiente, distribuida)
Anotaciones (generación de documentos)
token(jwt,token de acceso)
SDK (Java, C#, JavaScript)
Captura de pantalla del centro de configuración
Página de documentación
Definir interfaz
@Api(nombre = "bienes.get") bienes públicos getGoods(GoodsParam param) { Bienes bienes = nuevos Bienes(); bienes.setId(1L); bienes.setGoods_name("Apple iPhoneX"); (8000)); devolver mercancías;}
Solicitar datos
{ "name": "goods.get", "version": "", "app_key": "test", "data": "%7B%22goodsPrice%22%3A%22%22%2C%22goods_name%22% 3A%22iphoneX%22%7D", "marca de tiempo": "2018-03-22 13:48:58", "formato": "json", "signo": "C946ACA5AC95B1790511764A10E675B7"}
Devolver resultados
{ "code":"0", "data":{ "goods_name":"Apple iPhoneX", "id":1, "price":8000 }}
easyopen: easyopen: código central
easyopen-configuration: centro de configuración [opcional]
easyopen-demo: demostración del servidor de interfaz (incluidos springboot, springmvc)
easyopen-ext: paquete de extensión (que proporciona funciones mejoradas como disyuntores y versiones anteriores)
easyopen-sdk: SDK correspondiente a la interfaz (incluidos Java, C#, Javascript)
easyopen-starter: iniciador correspondiente a springboot
desarrollar-doc: documentación de desarrollo
1. Inicie easyopen-server-manual en easyopen-demo (el código comercial está en GoodsApi.java)
2. Ejecute SdkTest.java en sdk-java en easyopen-sdk