Hello liangshiwei, Thanks for sample. i observerd that in in host project we have preConfigure method to define version for every interface. Now i have 2 understanding challenges:
Hello @berkansasmaz, Thanks a lot for your help. it helped me but now i stuck again. Please help me.
We are building SaaS based product and apple provider details will change for each tenant. So i am using the ABP way of configuring the external provider.
Below changes i have done in "Identity server --> module" class. Now i have 2 question:
1- is the below implementation correct as per ABP syntex
.AddApple(AppleAuthenticationDefaults.AuthenticationScheme, _ => { })
.WithDynamicOptions<AppleAuthenticationOptions, AppleAuthenticationHandler>(AppleAuthenticationDefaults.AuthenticationScheme, options =>
{
options.WithProperty(x => x.ClientId);
options.WithProperty(x => x.KeyId);
options.WithProperty(x => x.TeamId);
options.WithProperty(x => x.UsePrivateKey((keyId) =>
provider.GetFileInfo($"AuthKey_{keyId}.p8")));
})
2- in UsePrivateKey can i assign byte string directly
Hi liangshiwei, i have looked the api sample code and api version document also. it is cofusing and i am not sure what exactly i have to change. can you help me:
ABP: 4.2.2 Angular Auto controller
Hello liangshiwei, if i am following https://github.com/abpframework/abp/blob/dev/docs/en/API/API-Versioning.md#enable-api-versioning then swagger is not able to load due to error:
2022-03-14 14:09:08.056 +05:30 [ERR] An unhandled exception has occurred while executing the request.
Swashbuckle.AspNetCore.SwaggerGen.SwaggerGeneratorException: Conflicting method/path combination "GET api/app/user-extensions" for actions - EzpandCC.Domain.Controllers.UserExtensions.UserExtensionController.GetListAsync (EzpandCC.HttpApi),EzpandCC.Domain.Controllers.UserExtensions.UserExtensionV2Controller.GetListAsync (EzpandCC.HttpApi). Actions require a unique method/path combination for Swagger/OpenAPI 3.0. Use ConflictingActionsResolver as a workaround
at Swashbuckle.AspNetCore.SwaggerGen.SwaggerGenerator.GenerateOperations(IEnumerable1 apiDescriptions, SchemaRepository schemaRepository) at Swashbuckle.AspNetCore.SwaggerGen.SwaggerGenerator.GeneratePaths(IEnumerable
1 apiDescriptions, SchemaRepository schemaRepository)
at Swashbuckle.AspNetCore.SwaggerGen.SwaggerGenerator.GetSwagger(String documentName, String host, String basePath)
at Swashbuckle.AspNetCore.Swagger.SwaggerMiddleware.Invoke(HttpContext httpContext, ISwaggerProvider swaggerProvider)
at Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext context)
at Microsoft.AspNetCore.Builder.UseMiddlewareExtensions.<>c__DisplayClass6_1.<<UseMiddlewareInterface>b__1>d.MoveNext()
but if i change path like "[Route("api/v1/app/user-extensions")]" and "[Route("api/v2/app/user-extensions")]" then dynamic api working fine but i am looking for querystring version parameters?
i am using default ABP application so assuming it is using Auto API Controller. Now question is which project --> class file i need to make these changes
Hello liangshiwei, few points:
1- https://github.com/abpframework/abp/blob/dev/docs/en/API/API-Versioning.md#enable-api-versioning which project --> file i have to make change i.e. Host, API, identity or all 2- do i have to follow all sections?
Thanks. it works
Thanks Maliming.
Hello maliming, I have copied account code for getting providers and getting 2 factor code. How i can verify the code? what is the api point
Hello maliming, I am changing my question here. I am simple looking for this aspect:
when i am looking documentation, i am realizing making identity as separate database will not be a right idea. Please correct me. if i was wrong then help me on below point.
Now when i look all modules, please help me to identity what all default modules should be on which database i.e. host and tenant
builder.ConfigurePermissionManagement();//both
builder.ConfigureSettingManagement();//both
builder.ConfigureBackgroundJobs(); //both
builder.ConfigureAuditLogging(); //both
builder.ConfigureIdentityPro(); //both
builder.ConfigureIdentityServer(); //both,
builder.ConfigureFeatureManagement(); //host
builder.ConfigureLanguageManagement(); //both
builder.ConfigureSaas(); //host
builder.ConfigureTextTemplateManagement(); //both
builder.ConfigureBlobStoring(); //both
builder.ConfigureCmsKit(); //both
builder.ConfigureCmsKitPro(); //both