Example #1
0
        public virtual void Configure(IAppBuilder owinApp)
        {
            if (owinApp == null)
            {
                throw new ArgumentNullException(nameof(owinApp));
            }

            owinApp.Map("/ClientAppProfile", innerOwinApp =>
            {
                innerOwinApp.UseXContentTypeOptions();

                innerOwinApp.Use <OwinNoCacheResponseMiddleware>();

                innerOwinApp.Run(async context =>
                {
                    if (context == null)
                    {
                        throw new ArgumentNullException(nameof(context));
                    }

                    IDependencyResolver dependencyResolver = context.GetDependencyResolver();

                    IClientProfileModelProvider clientProfileModelProvider = dependencyResolver.Resolve <IClientProfileModelProvider>();

                    ClientProfileModel clientProfileModel = await clientProfileModelProvider.GetClientProfileModelAsync(context.Request.CallCancelled);

                    string clientAppProfileJson = clientProfileModel.ToJavaScriptObject();

                    context.Response.ContentType = "text/javascript; charset=utf-8";

                    await context.Response.WriteAsync(clientAppProfileJson, context.Request.CallCancelled);
                });
            });
        }
        public virtual void Configure(IApplicationBuilder aspNetCoreApp)
        {
            if (aspNetCoreApp == null)
            {
                throw new ArgumentNullException(nameof(aspNetCoreApp));
            }

            aspNetCoreApp.Map("/ClientAppProfile", innerAspNetCoreApp =>
            {
                innerAspNetCoreApp.UseXContentTypeOptions();

                innerAspNetCoreApp.UseMiddleware <AspNetCoreNoCacheResponseMiddleware>();

                innerAspNetCoreApp.Run(async context =>
                {
                    if (context == null)
                    {
                        throw new ArgumentNullException(nameof(context));
                    }

                    IClientProfileModelProvider clientProfileModelProvider = context.RequestServices.GetService <IClientProfileModelProvider>();

                    ClientProfileModel clientProfileModel = await clientProfileModelProvider.GetClientProfileModelAsync(context.RequestAborted).ConfigureAwait(false);

                    string clientAppProfileJson = clientProfileModel.ToJavaScriptObject();

                    context.Response.ContentType = "text/javascript; charset=utf-8";

                    await context.Response.WriteAsync(clientAppProfileJson, context.RequestAborted).ConfigureAwait(false);
                });
            });
        }