2012-07-31 16 views
18

Tengo un proyecto construido con Awesomium integrado en .NET y requiere el uso de Flash. Flash arroja errores de seguridad al intentar acceder al contenido local (reproductor de video) y la (s) solución (es) que ofrece Awesomium aún no se han portado al contenedor .NET. Me pregunto si existe una manera bastante directa de incluir un servidor web en tiempo de ejecución en la aplicación donde puedo elegir un puerto arbitrario y crear un servidor localhost cuando la aplicación se ejecuta y señalar allí mi navegador Awesomium.¿Incrustar un servidor web liviano en una aplicación .net (node.js)?

¿Alguna idea?

+0

así que usted está tratando de conseguir un reproductor de flash para cargar contenido local? ¿Agregar algo al archivo hosts le permite solucionarlo? –

Respuesta

18

NHttp proporciona un servidor HTTP a la petición de análisis, pero hay que rodar sus propias respuestas. También hay Kayak, y el propio marco HttpListener.

Nancy es un framework MVC completo, es compatible con la sintaxis ASP.NET Razor y tiene muchas opciones de configuración y extensibilidad. Hay un self-host package disponible en nuget.

Si solo necesita mostrar un archivo SWF y algunos datos JSON, probablemente sea más fácil integrar el primer conjunto; si necesita generar páginas web completas, recomendaría Nancy.

0

Parece que puede reproducir contenido flash local siempre que el contenido sea confiable.

What is Flash Player security for local content?

contenido local puede ser designado como de confianza para que no se ve interrumpida por este cuadro de diálogo y se le permite funcionar como fue diseñado. Esta confianza se debe designar explícitamente en una de dos formas.

  • Ejecutando un programa de instalación de software en el que el contenido de la aplicación que instala ya está registrado como de confianza. Cuando ejecuta un programa de instalación, está permitiendo explícitamente que se instale un programa en su computadora. Por lo tanto, el editor de la aplicación puede registrar automáticamente el contenido con Flash Player como confiable.

  • Al agregar contenido o directorios específicos a una lista de archivos de confianza, a través del panel Configuración de seguridad global en el Administrador de configuración de Flash Player. En este panel, puede designar contenido específico o incluso directorios de confianza registrando ubicaciones manualmente con Flash Player. Para obtener instrucciones paso a paso sobre cómo designar el contenido como confiable, consulte la nota técnica: ¿Cómo dejo que el contenido Flash local se comunique con Internet?

4

Supongo que es Windows ... No necesita (o no debería) usar un servidor web. Si crea un archivo cfg, no importa cómo se llama, en este directorio:

% appdata% \ Macromedia \ Flash Player # Seguridad \ FlashPlayerTrust

Y poner una sola línea en ella que contiene la ruta la carpeta en la que desea confiar, Flash cargará los recursos locales sin problemas de seguridad. Puede borrar el archivo nuevamente cuando se apaga (esto es lo que hacemos).

Mismo principal en otras plataformas, solo la ubicación de esa carpeta FlashPlayerTrust es diferente.

+0

¡Gracias! Estaba usando Awesomium para capturar una página web y la ventana de seguridad de Flash se estaba abriendo y deteniendo el funcionamiento del programa. Esto fue una gran ayuda. –

2

Para ASP.MVC neto (y otros) autoalojamiento Puede utilizar OWIN implementaciones:

Interfaz Web Open for .NET (OWIN) define una abstracción entre los servidores web .NET y aplicaciones web. OWIN desacopla la aplicación web del servidor, lo que hace que OWIN sea ideal para autohospedar una aplicación web en su propio proceso, fuera de IIS.

Here puede encontrar un ejemplo simple con WebAPI.

+1

Tenga en cuenta: OWIN requiere elevación para instalar o incluso ejecutar un servidor web. Es imposible (AFAIK) tener un servidor OWIN de estilo portátil. IMO esta es una restricción ridícula para un servidor web genérico. –

6

Aquí hay otra alternativa que escribí el año pasado y que me ha servido muy bien.

EmbedIO: https://github.com/unosquare/embedio

lo uso sobre todo para crear servicios REST en la Frambuesa Pi (soft-float). Código actualizado para Mono 3.10, soporte para WebSockets y manejo asincrónico de solicitudes.

Paquete NuGet también disponible.

+0

¡Gran pieza de software! – Caverna

Cuestiones relacionadas