Skip to main content
Este artículo describe las diferencias de las API de solicitudes web entre el Microsoft Game Development Kit (GDK) y el Kit de desarrollo de software de XBOX One. WinHttp es la nueva API HTTP de Win32 que reemplaza a las API IXMLHttpRequest2 (IXHR2) e IMessageWebSocket. WinHttp es una API de nivel más bajo que IXHR2 y, por tanto, carece de algunas características en comparación con IXHR2, como el almacenamiento en caché de contenido, las cookies, la inserción automática de tokens de los servicios de XBOX y la aplicación automática de la seguridad. A cambio, WinHttp es mucho más eficiente al ejecutarse dentro del proceso, tener menos sobrecarga y evitar copias de memoria excesivas. Además, WinHttp admite HTTP/1.1, HTTP/2 y WebSockets, todo en una sola API, e incluye características que faltan en IXHR2, como las cargas fragmentadas. XCurl es una API HTTP para el Microsoft Game Development Kit (GDK). XCurl proporciona una API más sencilla mediante un adaptador sobre WinHttp. La superficie de la API de XCurl coincide en gran medida con libCurl. XCurl simplifica el desarrollo del título al aplicar automáticamente los procedimientos recomendados de seguridad y al encargarse de la inicialización de la red. Además de WinHttp, la API de servicios de XBOX (XSAPI) proporciona el conjunto sencillo de API http_call, que puede usar para realizar solicitudes HTTP de tipo REST a sus propios servidores personalizados. Recomendamos usar XSAPI para cualquier solicitud REST que su título realice a sus propios servicios y a los servicios de XBOX. Para obtener más información sobre XSAPI, consulte Introducción a las API de servicios de XBOX. El GDK incluye un ejemplo SimpleWinHttp que abstrae el uso de WinHTTP en un modelo asincrónico sencillo del Microsoft Game Development Kit (GDK). Recomendamos que use este ejemplo como punto de partida para su propia implementación de WinHTTP, ya que cubre muchos de los detalles que implica la creación de una integración de WinHTTP segura y sólida. Para obtener más información sobre cómo usar XCurl o WinHttp, consulte HTTP y sockets web.

Inicialización de la red

Su título se inicia lo antes posible durante el proceso de arranque del Game OS. Puede empezar a cargar recursos desde el disco duro y comenzar a inicializar la pila de gráficos. Sin embargo, su código se ejecuta antes de que los servicios de red se inicien, lo que da lugar a un período de tiempo en el que no es seguro usar las API de red de Win32. Definimos este período de tiempo como el período de inicialización de la red, después del cual la red se considera inicializada. La inicialización de la red suele tardar unos segundos, lo que puede resultar perceptible en su código. La inicialización de la red para los títulos ERA de XBOX One detenía de forma implícita y arbitraria API de red que, de otro modo, eran seguras en tiempo real, como WSAStartup o bind. Con las aplicaciones del Microsoft Game Development Kit (GDK), la inicialización de la red es ahora un concepto explícito con el que debe interactuar para usar cualquier API de red o de seguridad de Win32. Los títulos del Microsoft Game Development Kit (GDK) deben esperar hasta que el valor booleano XNetworkingConnectivityHint::networkInitialized esté establecido en true antes de llamar a cualquier API de red en Winsock, WinHttp, IP Helper, BCrypt, WinCrypt, Schannel o cualquier otra API de red de Win32. Llamar a cualquiera de estas API antes de que la red esté inicializada da lugar a un comportamiento indeterminado que puede llegar a incluir bloqueos aleatorios del proceso. Además, este mismo concepto se aplica en todos los ciclos de suspensión/reanudación. Al suspender, los títulos del Microsoft Game Development Kit (GDK) deben cerrar todos los identificadores de red y de seguridad. Los títulos del Microsoft Game Development Kit (GDK) deben tratar entonces el controlador de reanudación igual que el inicio inicial del título desde el punto de vista de la red y volver a esperar a que la red se inicialice. Para obtener más información, incluidos ejemplos de código que muestran cómo esperar a la inicialización de la red, consulte Inicialización y conectividad de la red.

Consulte también

Inicialización y conectividad de la red Información general sobre la seguridad de las comunicaciones Introducción a las API de servicios de XBOX http_call_c
Última modificación el 28 de agosto de 2026