Activities of "Esben_Dalgaard"

Console after login attempt:


Network tab after login attempt:


Cookies after login attempt:



Backend registers this call: {"userNameOrEmailAddress":"admin","rememberMe":true,"tenanId":null}}

Added the code to the HttpApi.Host part of the solution and published to azure, but it had no effect. It still won't keep the user logged in.

using System;
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Http;
using Microsoft.Extensions.DependencyInjection;

namespace AdministrativeDBModel
{
    public static class SameSiteCookiesServiceCollectionExtensions
    {
        private const SameSiteMode Unspecified = (SameSiteMode)(-1);

        public static IServiceCollection ConfigureNonBreakingSameSiteCookies(this IServiceCollection services)
        {
            services.Configure<CookiePolicyOptions>(options =>
            {
                options.MinimumSameSitePolicy = Unspecified;
                options.OnAppendCookie = cookieContext =>
                CheckSameSite(cookieContext.Context, cookieContext.CookieOptions);
                options.OnDeleteCookie = cookieContext =>
                CheckSameSite(cookieContext.Context, cookieContext.CookieOptions);
            });

            return services;
        }

        private static void CheckSameSite(HttpContext httpContext, CookieOptions options)
        {
            if (options.SameSite == SameSiteMode.None)
            {
                var userAgent = httpContext.Request.Headers["User-Agent"].ToString();

                if (DisallowsSameSiteNone(userAgent))
                {
                    options.SameSite = Unspecified;
                }
            }
        }
        private static bool DisallowsSameSiteNone(string userAgent)
        {
            if (userAgent.Contains("CPU iPhone OS 12")
               || userAgent.Contains("iPad; CPU OS 12"))
            {
                return true;
            }
            if (userAgent.Contains("Safari")
               && userAgent.Contains("Macintosh; Intel Mac OS X 10_14")
               && userAgent.Contains("Version/"))
            {
                return true;
            }
            if (userAgent.Contains("Chrome/5") || userAgent.Contains("Chrome/6"))
            {
                return true;
            }

            if (GetChromeVersion(userAgent) >= 80)
            {
                return true;
            }

            return false;

        }
        private static int GetChromeVersion(string userAgent)
        {
            try
            {
                return Convert.ToInt32(userAgent.Split("Chrome/")[1].Split('.')[0]);
            }
            catch (Exception)
            {
                return 0;
            }
        }
    }
}

It is now back to getting a bearer token, but deosn't keep the user logged in.

Where would I change that? I.e., where is that cutout from?

  • ABP Framework version: v3.0.5
  • UI type: Angular
  • DBType: EFC, modified for MySQL
  • Tiered (MVC) or Identity Server Seperated (Angular): no
  • Exception message and stack trace:

  • Steps to reproduce the issue:
  • Database with multiple join tables for DB business model
  • Frontend running on Microsoft Azure App service.
  • Backend Running on Microsoft Azure App service. Works when contacted by Postman.
  • CORS in enabled on App service for backend. Appsetting.json: Appsettings.Production.json: Environment.prod.ts:

The frontend is deployed by ng build --prod and uploaded by filezilla to the app services wwwroot folder. Before CORS was enabled on backend, a bearer token was recieved, but it had no effect and did not keep the user logged in.

How do we set up so that the backend and frontend can communicate properly?

Zobrazeno od 21 do 25 z celkem 25 záznamů
Made with ❤️ on ABP v8.2.0-preview Updated on března 25, 2024, 15:11