As you mentioned, the https://localhost:44325/api/abp/api-definition endpoint should return the list of all the endpoints. I checked this in the older version (7.3.2), there it was returning all the endpoints of the application, but in the upgraded version (8.2.1), when hitting the same endpoint, it only returned the following endpoints :
{ "modules": { "abp": {}, "auditLogging": {}, "featureManagement": {}, "fileManagement": {}, "gdpr": {}, "languageManagement": {}, "permissionManagement": {}, "settingManagement": {}, "textTemplateManagement": {} }, "types": {} }
(Because of the words limit I have removed the internal content of each module. The point here is that there is no endpoint in this JSON which corresponds to any of my microservices). This is happening in the newer version.
Can we set-up a meeting to resolve the issue?
My forms service is running on the port 44395, and when I hit the https://localhost:44395/api/abp/api-definition endpoint, all the API endpoints are there in the response, including the one that I am trying to use in the AuthServer.
Yes, I have added the FormsServiceHttpApiModule dependency in my WebGatewayModule.cs file, but when I hit the https://localhost:44325/api/abp/api-definition endpoint, it shows the endpoints of only the Administration service.
I have a microservice template project with Angular UI. Here I have a microservice called FormsService, and I am using one of the API endpoints of this microservice in my AuthServer. For the FormsService I am using the dynamic proxies to detect the API endpoints when used as a remote service in any other service (AuthServer in my case). I have used AddHttpClientProxies method in my FormsServiceHttpApiClientModule file to configure the dynamic proxies. And in my AuthServer's appsettings.json I have written
"RemoteServices": { "Default": { "BaseUrl": "https://localhost:44325" } }
so that it can redirect to the WebGateway (port: 44325) and from there it should be re-routed to the FormsService's API endpoint.
In order to use the dynamic proxy for the FormsService, I have also given the dependency of FormsServiceHttpApiClientModule in the WebGateway project (AuthServerModule.cs file).
I was previously using the ABP version 7.3.2, and now I have upgraded it to version 8.2.1. In the older version it was working fine, but in the 8.2.1 version it's giving the following error while trying to use that endpoint from AuthServer (I have given the reference of FormsService in the AuthServer and there in the Register.cs file I have injected the AppService in the constructor of Register.cs file and using the method of that AppService):
An unhandled exception occurred while processing the request. AbpException: Could not find remote action for method: System.Threading.Tasks.Task`1[Volo.Forms.Forms.FormWithDetailsDto] GetRegistrationFormAsync(System.Guid) on the URL: https://localhost:44325 Volo.Abp.Http.Client.DynamicProxying.ApiDescriptionFinder.FindActionAsync(HttpClient client, string baseUrl, Type serviceType, MethodInfo method)
Please suggest.
We are trying run performance testing on the application using the Apache JMeter. Following api calls (total 3) are getting errors while testing the application, can you suggest what can be done this issue?
API Call 1 : https://scopeuat.doctrz.in:44322/Account/Login Request body: GET https://scopeuat.doctrz.in:44322/Error?httpStatusCode=400
GET data:
Cookie Data: .AspNetCore.Antiforgery.YkhOIqalreE=CfDJ8DXz2n710ANCtQZrCmvoKDgN-wZi7vEdV5z7fK1KBGOe0D9GAjDDTqNYLfyifxyyqg2gbQYVDJumTjFKNgY2FIbVv4SVD6noo2LPnSaww0R2TL1O3cIcjWDOblIZCbTDvZ5qZak0HxUtvlIcATPp_Hs; XSRF-TOKEN=CfDJ8DXz2n710ANCtQZrCmvoKDjdqFVP0xx2TP9QdW0hwVvg8fO7JOBtca5vdKczKpyNz2zIX4vpwTqNlTlFuZiCw8cYmL2t1bpwhp0jTjrQBz2kl5Y-3wKBgXf6meVvOkCOabI2bQe-hgvVok4ECWsH1gw
Request Headers: Connection: keep-alive Upgrade-Insecure-Requests: 1 Content-Type: application/x-www-form-urlencoded Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,/;q=0.8,application/signed-exchange;v=b3;q=0.7 sec-ch-ua: "Not/A)Brand";v="8", "Chromium";v="126", "Google Chrome";v="126" sec-ch-ua-mobile: ?0 sec-ch-ua-platform: "Windows" User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36 DNT: 1 Host: scopeuat.doctrz.in:44322
API Call 2 : https://scopeuat.doctrz.in:44322/connect/token
Request Body: POST https://scopeuat.doctrz.in:44322/connect/token
POST data: code=P7kLRlQDL4csWrX_hroS54eq6_eyV2wq7UKGI1q47Yc&grant_type=authorization_code&redirect_uri=https%3A%2F%2Fscopeuat.doctrz.in&client_id=Angular&code_verifier=N2ZZVXRETGJXMVBpQWlJak8xdmhXTURKTTNNfjBqM1RqVHQxbkUzZ0Z5OWRO
Cookie Data: .AspNetCore.Antiforgery.YkhOIqalreE=CfDJ8DXz2n710ANCtQZrCmvoKDgN-wZi7vEdV5z7fK1KBGOe0D9GAjDDTqNYLfyifxyyqg2gbQYVDJumTjFKNgY2FIbVv4SVD6noo2LPnSaww0R2TL1O3cIcjWDOblIZCbTDvZ5qZak0HxUtvlIcATPp_Hs; .AspNetCore.Culture=c%3Den%7Cuic%3Den; XSRF-TOKEN=CfDJ8DXz2n710ANCtQZrCmvoKDh0Esh26DPIyYi9XaISAV31KUy9Ylr0ya2zMf7XBjGYQvE7tnW1niA45coeiacFhjm0UZdhWJI2PhNPrxxf6mlmJYZ34Ku8AbZryQpJQuwyjF1Cn_h_orIse-Vr2ZrmnyI Request Headers: Connection: keep-alive Content-Type: application/x-www-form-urlencoded __tenant: 3a10d8ba-84c1-030b-2672-709df3812b9d Accept: application/json, text/plain, / X-Requested-With: XMLHttpRequest sec-ch-ua: "Not/A)Brand";v="8", "Chromium";v="126", "Google Chrome";v="126" sec-ch-ua-mobile: ?0 sec-ch-ua-platform: "Windows" User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36 DNT: 1 Content-Length: 217 Host: scopeuat.doctrz.in:44322
API Call 3: https://uat.doctrz.in:44325/api/appointment-service/session/list
Request Body: POST https://uat.doctrz.in:44325/api/appointment-service/session/list
POST data: {"maxResultCount":10,"skipCount":0,"SessionQuestionId":"3a131f0f-98f4-dbde-56ee-909b142b20c7","ConsultationFormInputs":[]}
Cookie Data: .AspNetCore.Antiforgery.YkhOIqalreE=CfDJ8DXz2n710ANCtQZrCmvoKDioKzEaKYBj_fCFdfY7smIqk5oFIiI9jUCMBMuJMra_h_EUn_xr4dXReZJJcqFB5zbqUAXgnNpWdUfg18JfN7oQC8Diei6Dyn6XNsA7AD5TJbXGZbgoqJ82g4LqoC46wiw; XSRF-TOKEN=CfDJ8DXz2n710ANCtQZrCmvoKDhHsn44MTQJmXJbM1_MXOn7M6ncReye0lT9-MjgOeZeFC2ucYTCjn6VAfiTZsempLEERqS7ba0UgWbDbwhUBxyhTD21hoMWQDzGy0FhX3yXaLKCdD-JcbP6I3Yg-va7dbU; __tenant=3a10d95d-cc01-d739-974d-f5ae592edbd8; .AspNetCore.Culture=c%3Den%7Cuic%3Den Request Headers: Connection: keep-alive Authorization: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IjA1MTU5NTE4RDdDNDI3MTJFQ0VBMTgwOEZDRUQzRkE2MTBDQzkwMzQiLCJ4NXQiOiJCUldWR05mRUp4THM2aGdJX08wX3BoRE1rRFEiLCJ0eXAiOiJhdCtqd3QifQ.eyJzdWIiOiIzYTEwZDk1ZC1jYzVkLTdhZTYtMjFjYi00YjkyMzg0NTdjMmUiLCJwcmVmZXJyZWRfdXNlcm5hbWUiOiJhZG1pbiIsImVtYWlsIjoic2NvcGV1c2VyQHRlc3QuY29tIiwicm9sZSI6ImFkbWluIiwidGVuYW50aWQiOiIzYTEwZDk1ZC1jYzAxLWQ3MzktOTc0ZC1mNWFlNTkyZWRiZDgiLCJnaXZlbl9uYW1lIjoiYWRtaW4iLCJwaG9uZV9udW1iZXJfdmVyaWZpZWQiOiJGYWxzZSIsImVtYWlsX3ZlcmlmaWVkIjoiRmFsc2UiLCJ1bmlxdWVfbmFtZSI6ImFkbWluIiwib2lfcHJzdCI6IkFuZ3VsYXIiLCJpc3MiOiJodHRwczovL3VhdC5kb2N0cnouaW46NDQzMjIvIiwib2lfYXVfaWQiOiIzYTEwZGNhMi02ODA1LWM2ZGUtNmEyYy1hZGMyNzExMmZjYzkiLCJjbGllbnRfaWQiOiJBbmd1bGFyIiwib2lfdGtuX2lkIjoiM2ExMzdlYzUtMzU3NC03NzY1LTU2YWUtOWYwNWY4MDY2MTgwIiwiYXVkIjpbIkFjY291bnRTZXJ2aWNlIiwiSWRlbnRpdHlTZXJ2aWNlIiwiQWRtaW5pc3RyYXRpb25TZXJ2aWNlIiwiU2Fhc1NlcnZpY2UiLCJQcm9kdWN0U2VydmljZSIsIkNsaW5pY1NlcnZpY2UiLCJBcHBvaW50bWVudFNlcnZpY2UiLCJGb3Jtc1NlcnZpY2UiXSwic2NvcGUiOiJvZmZsaW5lX2FjY2VzcyBvcGVuaWQgcHJvZmlsZSBlbWFpbCBwaG9uZSBBY2NvdW50U2VydmljZSBJZGVudGl0eVNlcnZpY2UgQWRtaW5pc3RyYXRpb25TZXJ2aWNlIFNhYXNTZXJ2aWNlIFByb2R1Y3RTZXJ2aWNlIENsaW5pY1NlcnZpY2UgQXBwb2ludG1lbnRTZXJ2aWNlIEZvcm1zU2VydmljZSIsImp0aSI6ImQzNmM4MmU1LTc3NTctNDY2NC04Yjc0LTNhOWNhNDM0MzNiMyIsImV4cCI6MTcxOTgxMjQ0MywiaWF0IjoxNzE5ODA4ODQzfQ.be1d_CTREeFMhFFxOezkFo_SHCnX9Rs2acel5-MDt-xoEkeeFJAuYHWmbjgnBsJTXO-uqeat-FdxFFFMeL0bVvWYjAwMLZEJh93C9EapYuQUEl8ayLwHNN_1dD-T6RavqX2RB_3YSAa5cno57xOhEvx0YZ58VDzV9yWLaM8h9Bu6Kn9qdiAzjpXIX4wuj7-O95e6-_0q8754m4khFIirCtUMJTfqSnF6yrTVaaTwqVNxc19pDbr7KZsLUQqBc7oOy34jS3DL7HeBeP2pJzGoz6cDAI0PWmVGeUg5QlnBGIWhUqY36q5AFCScTnWVhgatfulghaTYcV7i79ARw_Y4XA Content-Type: application/json __tenant: 3a10d95d-cc01-d739-974d-f5ae592edbd8 Accept: application/json, text/plain, / X-Requested-With: XMLHttpRequest sec-ch-ua: "Not/A)Brand";v="8", "Chromium";v="126", "Google Chrome";v="126" sec-ch-ua-mobile: ?0 sec-ch-ua-platform: "Windows" User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36 DNT: 1 Content-Length: 122 Host: uat.doctrz.in:44325
I have the Auth Server in the form of an MVC application. I had to do some customizations in the Login and Register pages of the Auth Server. In order to do so I have downloaded the Account module using abp suite, pciked up the Login.cshtml.cs, Login.cshtml, Register.cshtml.cs and Register.cshtml files at the required directory. I am able to customize those pages, but the reCaptcha is not getting displayed after I put those files in my project. When I try to inspect the application, it shows the recaptcha element in the Elements section, but it doesn't actually appear on the UI. Can you suggest what should I do?
And in case of no space, does the case sensitivity affect the tenant name?
Okay, this worked. Now, how will my application differentiate between different subdomains? For example, if the name of the subdomain is test, then how will ABP know which tenant it has to map it with? Also, if my tenant name has a space ("Test Tenant" for instance), what will be the subdomain name?