[nguyenngoc.son] said: Hi, When user access the site the first time, the endpoint application-configuration take 1.6 second to complete. After login, it take 5.7 seconds
It is common for the first call to application-configuration to take longer because the server builds and caches the configuration. Subsequent calls should be significantly faster. If not (and it seems it's not in your case), can you share your solution via email to support@abp.io with the ticket number, so I can deeply investigate the potential reason?
❓ What I need help with: How can I generate the Angular UI (CRUD pages, routing, menu) for entities created inside modular projects using ABP Suite?
Hi, we will create the angular version for our Modular Monolith Tutorial documentation series, but in the meantime, can you check https://github.com/abpframework/abp/issues/20827#issuecomment-2624232973 these steps and apply them?
Regards.
[blepo] said: I'm not sure that this is the case. Even in the thread you mentioned, https://abp.io/support/questions/8767/Lagging-and-loading-time-of-Blazor-Web-App-Template-Application, it can be seen that this stuff does not happen. The lag in loading, yes, but not the other issues.,
I appreciate your reluctance to jump into such a vague problem, but this is a critical issue for us. I would very much like to use my support token on this problem. I can provide the project, the har file from the network inspector, etc.
Hi, thanks for the update. I'll create a new Blazor Web App to try and reproduce the issue on my end. Once I’ve had a chance to investigate it in detail, I’ll get back to you with my findings as soon as possible.
Regards.
Hi, by default, when you create a document project, you need to pass the project name, the document name, and also the version. For example, https://abp.io/docs/latest/modules/docs#single-project-mode is the structure of our documentation. (docs -> single project name, latest -> is the version, docs -> this is document docs.md)
In your case, you should pass the version, and also pass the project name. If you need the single project mode, like we use in our documentation site, you can follow: https://abp.io/docs/latest/modules/docs#single-project-mode
Regards.
[JanneHarju] said: I'm returning this later
Hi, is there any update?
[improwise] said: Seems not even ABP staff can control the service bot :)
Reopened again
Yes, indeed it automatically closes, unfortunately :(
We will add an option to our support platform, so it will not close in the future.
Hi, currently the latest ABP Studio version is 0.9.26 and it uses v9.1.1 of ABP. You can see all the version information from here.
Regards.
Hi, ABP’s RemoteStreamContent is great for lightweight files or when you want to abstract things but it’s not designed for very large files. It attempts to copy the stream into an in-memory buffer (MemoryStream), which crashes for files >2GB or causes heavy memory usage.
So, for large files, instead, you can use FileStream (see https://stackoverflow.com/a/39890811/10477283) and FileStreamResult.
Hi, The application is connected to the redis successfully without any issue
After the initial request to the 'application-configuration' endpoint, how much time do subsequent requests take? It's not 5 minutes again, right? (I'm asking this to ensure for the subsequent calls it gets the configuration from Redis or not.)
Hi, setting SameSite as None is the default option (https://github.com/abpframework/abp/blob/dev/framework/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/AntiForgery/AbpAntiForgeryOptions.cs#L53-L60). So, you can leave it as it is for cross-site access.
As far as I understand, after the first request you are able to get the verification code. So, it seems by the time your JS reads XSRF-TOKEN and adds it to the header, the browser hasn't yet attached the freshly issued cookie to the request, so the tokens don't match. On your retry, the cookie is already present and everything works as expected.
Maybe you can apply the followings:
Lax: SameSite.Lax instead of SameSite.None (With None+Secure, some browsers hold off on sending the cookie until after a round-trip establishes that the site is “good.” This can cause the delay maybe)            Configure<ForwardedHeadersOptions>(options =>
            {
                options.ForwardedHeaders = ForwardedHeaders.XForwardedFor | ForwardedHeaders.XForwardedProto;
            });
Regards.