Introducción
Si desea utilizar BioStar 2 New Local API como una API RESTful para su propia personalización u otros fines, simplemente puede consultar este artículo. Este artículo cubrirá el uso más básico de la aplicación de consola BioStar 2 New Local API by C#.
Esta es solo una aplicación de muestra hecha para aquellos que podrían necesitar usar la Nueva API Local de BioStar 2. Es una aplicación de consola de Visual C#.
Funciones
Este artículo cubrirá las siguientes funciones:
- Iniciar sesión
- Buscar usuarios
- Crear usuarios
- Crear usuarios con access group
- Recuperar datos de registro
- Recuperar datos de registro con el pedido por
A través de este artículo, puede aprender a llamar a una función api para crear usuarios en su servidor BioStar 2. Hay bastantes parámetros, pero puede crear usuarios simplemente teniendo valores para los campos obligatorios. Si desea agregar otros campos opcionales a su usuario, simplemente puede insertar los valores de una manera adecuada. Los valores obligatorios pueden parecer diferentes de la fanfarronería, pero funciona.
Asegúrese de echar un buen vistazo al código de ejemplo del programa de C# creado para llamadas a la API. Simplemente puede copiar y pegar el código fuente para usar la misma función en su propia integración.
También puede ver cómo llamar a las funciones de la API a través de Postman, que es un programa utilizado para las llamadas a la API RESTful.
Parte 1. Llamada a la API y parámetros
[POST]: /usuarios
[Parámetros]
Grupo | Nombre | Subgrupo | Tipo | *M/O | Explicación | Valor |
Usuario | nombre |
| cuerda | M | Nombre de usuario |
|
| Correo electrónico |
| cuerda | O | Correo electrónico | |
| Foto |
| cuerda | O | Foto de usuario |
|
| Teléfono |
| cuerda | O | Teléfono |
|
| User_id |
| cuerda | M | ID de usuario |
|
| User_group_id | identificación | Entero | M | ID de grupo de usuarios |
|
| Deshabilitado |
| Booleano | M | Estado del usuario | Ex) falso |
| Start_datetime |
| cuerda | M | Fecha de inicio | 2001-01-01T00:00:00.00Z |
| Expiry_datetime |
| cuerda | M | Fecha de caducidad | 2030-12-31T23:59:00.00Z |
| Permiso | Identificación | cuerda | O | ID de permiso | ID de permiso (Get_/api/permissions) 1(Administrador) 2 (Operador de usuario) 3 (Operador de monitoreo) .. (CustomId) 253(Vídeo) 254 (TA) 255(Usuario) 100000(Visitante) |
|
| Nombre | cuerda | O | Prueba |
|
|
| Descripción | cuerda | O | Descripción |
|
|
| Operador – nombre | cuerda | O | Nombre de usuario |
|
|
| Operador[] – owner_id | cuerda | O | ID de permiso | ID de permiso (Get_/api/permissions) 1(Administrador) 2 (Operador de usuario) 3 (Operador de monitoreo) .. (CustomId) 253(Video)(Get_/api/permissions) 1(Administrador) 2 (Operador de usuario) 3 (Operador de monitoreo) .. (CustomId) 253(Vídeo) 254 (TA) 255(Usuario) 100000(Visitante) 254 (TA) 255(Usuario) 100000(Visitante) |
|
| Operador[] – user_id | cuerda | O | ID de usuario |
|
| Access_groups | Nombre | cuerda | O | Nombre del grupo de acceso | Ya existía |
|
| Identificación | Entero | O | ID de grupo de acceso | Ya existía |
| Contraseña |
| cuerda | O | Contraseña |
|
| Anclar |
| cuerda | O | ANCLAR |
|
| Login_id |
| cuerda | O | ID de inicio de sesión |
|
| User_ip |
| cuerda | O | IP del usuario |
|
| Fingerprint_templates[] | Plantilla0 | cuerda | O | Datos binarios de huellas dactilares | Cadena Base64 codificada |
|
| Plantilla1 | cuerda | O | Datos binarios de huellas dactilares | Cadena Base64 codificada |
|
| Finger_mask | Booleano | O | Máscara para los dedos |
|
|
| esNuevo | booleano | O | Nueva huella digital |
|
| Credenciales | Caras[] – raw_image | cuerda | O | Datos de imagen facial |
|
|
| Caras[] – plantillas – plantilla | cuerda | O | Datos de credenciales de Face : datos binarios de Face |
|
|
| Caras[] – Bandera | cuerda | O | Bandera de la cara |
|
|
| Caras[] – useProfile | Booleano | O | Perfil de uso de datos faciales |
|
|
| Caras[] – Índice | Entero | O | Índice facial |
|
| Tarjetas[] | Card_type – id | cuerda | O | ID de tipo de tarjeta | (0:CSN, 1:WIEGAND, 2:SECURE, 3:ACCESS, 4:CSN_MOBILE, 5:WIEGAND_MOBILE, 6:QR/barcode, 7:BioStar 2 QR) |
|
| Card_type – nombre | cuerda | O | Nombre del tipo de tarjeta |
|
|
| Card_type – tipo | cuerda | O | Tipo de tarjeta | (1:CSN, 2:SECURE, 3:ACCESS, 10:CSN_WIEGAND, 4:CSN_MOBILE, 5:WIEGAND_MOBILE, 6:QR/Barcode, 7:BioStar 2 QR) |
|
| Card_type – modo | cuerda | O | Modo de tarjeta | (C:CSN, S:SECURE, A:ACCESS, M:CSN_MOBILE) |
|
| Card_id | cuerda | O | Identificación de la tarjeta |
|
|
| Display_card-id | cuerda | O | ID de tarjeta de visualización |
|
|
| Identificación | cuerda | O | IDENTIFICACIÓN | * Identificación de tarjetas en BioStar 2 (generalmente se realiza por orden de inscripción) |
|
| cardId | cuerda | O | Identificación de la tarjeta Wiegand | (Usa Wiegand) |
|
| Wiegand_format_id – id | cuerda | O | ID de formato Wiegand |
|
|
| Wiegand_format__name | cuerda | O | Nombre de formato Wiegand | (Usa Wiegand) |
* M – Obligatorio, O – Opcional
Parte 2. Cuerpo de solicitud y modelo de respuesta
[Ejemplo de entrada con valores mínimos]
{ "Usuario": { "nombre": "API2", "user_id": "108", "user_group_id": { "id": 1, "nombre": "Todos los usuarios" }, "deshabilitado": "falso", "start_datetime": "2001-01-01T00:00:00.00Z", "expiry_datetime": "2030-12-31T23:59:00.00Z", "login_id": "api23", "contraseña": "PassWord@" } } |
[Respuesta: Fallo]
{ "Respuesta": { "código": "202", "link": "https://support.supremainc.com/en/support/home", "message": "El usuario que tiene el mismo ID ya existe" } } |
[Respuesta: Exitosa]
{ "UserCollection": { "total": "1", "filas": [ { "user_id": "108", "nombre": "API2" } ] }, "Respuesta": { "código": "0", "link": "https://support.supremainc.com/en/support/home", "message": "Éxito" } } |
Parte 3. Ejemplo de creación de usuario de la consola
[Código fuente del método Create Users]
static async void CreateUserTask() { if (sessionID == null) { Console.WriteLine("¡Primero debe iniciar sesión!" ); volver; } CookieContainer cookieContainer = nuevo CookieContainer();
Controlador HttpClientHandler = nuevo HttpClientHandler(); Controlador. CookieContainer = cookieContainer;
HttpClient httpClient = nuevo HttpClient(controlador);
Cliente HttpClient = nuevo HttpClient(controlador); httpClient.DefaultRequestHeaders.Add("bs-session-id", sessionID); cookieContainer.Add(new Uri("https://127.0.0.1"), new Cookie("bs-session-id",sessionID));
string resourceAddress = "https://127.0.0.1/api/users";
JavaScriptSerializer serializer = nuevo JavaScriptSerializer(); Console.WriteLine("Introduzca el NOMBRE DE USUARIO:"); string UserName = Console.ReadLine(); Console.WriteLine("Introduzca el ID de usuario:"); string UserID = Console.ReadLine(); Console.WriteLine("Introduzca el ID de inicio de sesión del usuario: "); cadena User_login_id = Console.ReadLine(); Console.WriteLine("Introduzca la CONTRASEÑA DE INICIO DE SESIÓN DEL USUARIO:"); cadena User_login_pw = Console.ReadLine();
string payload2 = "{ \"Usuario\": "; payload2 = payload2 + "{\"name\": \"" + UserName + "\", "; payload2 = payload2 + "\"user_id\": \"" + UserID + "\","; payload2 = payload2 + "\"user_group_id\": { \"id\": 1, \"name\": \"Todos los usuarios\" },\"disabled\": \"false\",\"start_datetime\": \"2001-01-01T00:00:00.00Z\", \"expiry_datetime\": \"2030-12-31T23:59:00.00Z\", "; payload2 = payload2 + "\"login_id\": \""+ User_login_id +"\", "; payload2 = payload2 + "\"password\": \"" + User_login_pw + "\"}}"; Console.WriteLine(payload2); StringContent sc = new StringContent(payload2, Encoding.UTF8, "application/json");
HttpResponseMessage httpResponse = httpClient.PostAsync(resourceAddress, sc). Resultado;
if (httpResponse.IsSuccessStatusCode == true) { Console.WriteLine("Se ha creado el usuario"); string httpResponseBody = await httpResponse.Content.ReadAsStringAsync(); Console.WriteLine(httpResponseBody); } más { Console.WriteLine("Error de creación del usuario"); Console.WriteLine(httpResponse.ToString()); } } |
[Después de crear el usuario correctamente]
Parte 4. Crear usuario a través de Postman
[Ejemplo de solicitud: Encabezados]
*Debe usar el valor 'be-session-id' del encabezado de respuesta de la llamada a la API de inicio de sesión para autenticar el uso de la API para otras llamadas a la API.
[Ejemplo de solicitud]
[Ejemplo de respuesta: cuerpo]