ABP Client-proxies use IHttpClientFactory to create HttpClient objects and it uses RemoteServiceName to create HttpClient for each of your remote service.
https://github.com/abpframework/abp/blob/9a43b9c9dfbc8b883c58a7acdb9c21619aa48dfc/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/ClientProxying/ClientProxyBase.cs#L124
So you can easily use freshly defined a new HttpClient for your service:
context.Services.AddHttpClient("YourService") // Administrator, Identity etc.
.ConfigureHttpClient(client =>
{
client.BaseAddress = new Uri("https://api.example.com/");
client.Timeout = TimeSpan.FromMinutes(2);
});
This defines a new HttpClient instead trying to configure existing one, you can have all control on the HttpClient in this way
The error shows the permission isn't granted for the current request / current authenticated user. A couple of reasons can cause this issue:
The user really don't have the permission.
The cookie/token might be obsolete or created by another authentication server or application itself, you can try to clear cookies and everything and authenticate again from scratch.
If you deployment is distributed, you can also try clearing Redis cache, since permissions are cached in Redis in distributed solutions. The cached data might be wrong, outdated or corrupted.
Hi,
You have to create client-proxies into HttpApi.Client project:
Otherwise, you replace the original ApplicationService implementation and it cannot work. Whenever you need to consume by using client-proxies, you'll need to use HttpApi.Client and Application.Contracts project reference and use interfaces of your AppServices. Whenever you inject that interface, it'll use ClientProxy if the project has HttpApi.Client reference.
Hi,
We cannot know what is the exact reason of this behaviour.
Can you enable debug logs to check detailed logs to determine what is happenning exactly by following this steps:
https://abp.io/support/questions/8622/How-to-enable-Debug-logs-for-troubleshoot-problems
I think this is a similar case:
https://abp.io/support/questions/8325/How-to-increase-http-client-timeout
Can you try increasing YARP timeout from your Gateway, since gateway doesn't use ABP's client-proxy, it's a standalone proxy implementation by dotnet
Whenever you create a new project there'll be already a file for that purpose with an example:
You can uncomment that examnples and ready to go, there'll be no other changes. If you configured any EntityExtension, you'll need to create a database migration.
If you are not familiar with CLI commands you can do it in ABP Studio UI:

Hi,
Can you try running it on a different port by modifying appsettings.json with the following steps: https://abp.io/qa/questions/8189/3a15f274-2ef1-f039-e08c-32c2e6f25853
It seems your client sends request to gateway, and gateway successfully proxies it to the service. It might be real timeout scenario. Can you check if your service generate response in 30seconds or not. The best practise for long-running reporting operations is, executing log generation as background job, and whenever it finishes, sending an email to report requester.
Also in your logs, it seems client cancels request in 10 seconds and resends it again and again, so we need to check another question here:
Does it work when you directly call service endpoint without gateway?
I think it's similar to https://abp.io/support/questions/8834/Critical-perfomance-issue-Blazor-webapp-interactive-auto
There is a performance issue on WebApp loading currently. but it seems some modules has different visuals on server-side render and client-side render, that may cause this dashboard visual changes