AYUDA EN LÍNEA
 WINDEVWEBDEV Y WINDEV MOBILE

Este contenido se ha traducido automáticamente.  Haga clic aquí  para ver la versión en inglés.
Ayuda / WLanguage / Funciones WLanguage / Comunicación / Sockets
  • Optimizando las conexiones para una IP Address
  • Timeout
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReportes y ConsultasCódigo de Usuario (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Código Navegador
WINDEV Mobile
AndroidWidget Android iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Otros
Procedimientos almacenados
Se utiliza para establecer una conexión segura con un servidor SSL.
Ejemplo
IF SocketConnectSSL("Server", 8000, "150.134.20") = False THEN
Error("Connection error" + ErrorInfo(errMessage))
END
Sintaxis
<Result> = SocketConnectSSL(<Socket name> , <Port number> , <Address> [, <SSL option> [, <Maximum timeout> [, <Client certificate>]]])
<Result>: booleano
  • True si se estableció la conexión,
  • False en caso contrario. Si se produce un error, puede get más detalles sobre el error con ErrorInfo.
<Socket name>: Cadena de caracteres
Nombre que se le dará a la conexión abierta en el socket del servidor. Este nombre será utilizado por todas las funciones del socket.
<Port number>: Integro
Número de puerto de la toma de corriente. Si utiliza un zócalo associated con un protocolo preestablecido, utilice el número de puerto associated con el protocolo.
Si el socket fue creado por una aplicación WINDEV, este número debe incluirse entre 5 000 y 65 000. En este caso, el número debe ser idéntico al número de puerto especificado en SocketCreateSSL.
<Address>: Cadena de caracteres
Dirección del servidor. Si no se especifica este parámetro, se busca el servidor en el ordenador actual.. Esta Address se puede dar en el siguiente formato:
  • IP Address en formato XXX.XXX.XXX.XXX (125.5.110.100 por ejemplo).
  • URL que contiene el nombre del servidor (www.windev.com por ejemplo). Se recomienda esta sintaxis.
<SSL option>: Combinación opcional de constantes de tipo integer
Permite elegir el protocolo y el modo de identificación:
ProtocolSSL2SSL2 protocol
ProtocolSSL3Protocolo SSL3
ProtocolTLS1Protocolo TLS1
ProtocolTLS1 _1TLS 1.1 protocol
ProtocolTLS1 _2TLS 1.2 protocol
ProtocolTLS1 _3TLS 1.3 protocol

Por Default, la combinación utilizada es: ProtocolTLS1 + ProtocolTLS1_1 + ProtocoleTLS1_2.
<Maximum timeout>: Entero o duración opcional
Tiempo máximo de espera (en milisegundos) para establecer la conexión. Este tiempo de espera se utilizará si el servidor rechaza la conexión (SocketDeny). En este caso, la conexión no se bloqueará.
Este parámetro puede ser:
  • un número entero que corresponde al número de milisegundos,
  • una variable de tipo Duration,
  • la duración en un formato legible (por ejemplo, 1 s o 10 ms).
Esta espera es igual a 10 milisegundos de Default.
<Client certificate>: Variable de tipo Certificate
Nombre de la Certificate Variable que permite al servidor autentificar al cliente que quiere conectarse y comprobar si este cliente está autorizado a acceder al servidor. Este Certificate debe ser reconocido en el servidor.
Observaciones

Optimizando las conexiones para una IP Address

Cuando se pasa una dirección IP a la función SocketConnectSSL, se puede optimizar la conexión utilizando el siguiente código:
Socket.Option = SocketOptimizeIPConnection
Esta opción no está habilitada por Default porque la conexión puede fallar en algunas configuraciones. Sin embargo, puede ser useful en algunas aplicaciones para las que el rendimiento es crítico.
Observación: Para restaurar el comportamiento predeterminado, simplemente use la constante SocketOptionDefault:
Socket.Option = SocketOptionDefault

Timeout

El tiempo de espera especificado por agrupa el tiempo de espera de dos pasos:
  • el tiempo de espera para la resolución de Address: este tiempo de espera no puede ser configurado y puede ser optimizado (ver abajo).
  • el tiempo máximo de espera para que la conexión sea aceptada por el servidor. Pueden darse varios casos:
    • el servidor rechaza la conexión.
    • el servidor acepta la conexión dentro del límite de tiempo de espera
    • el servidor no está disponible.
    • la Address especificada es inválida.
Para optimizar el tiempo de resolución de Address (tiempo necesario para encontrar el Address), le aconsejamos que:
  • usar un DNS en la red. Por lo tanto, esta Address se buscará hacia este servidor y no para cada ordenador (1 búsqueda en lugar de x búsquedas donde x representa el número de ordenadores). Cada computadora debe estar registrada hacia este servidor.
  • para una dirección IP, use Socket.Option = SocketOptimizeIPConnection.
Clasificación Lógica de negocio / UI: Lógica de negocio
Componente: wd290com.dll
Versión mínima requerida
  • Versión 12
Esta página también está disponible para…
Comentarios
Haga clic en [Agregar] para publicar un comentario

Última modificación: 22/06/2023

Señalar un error o enviar una sugerencia | Ayuda local