You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[HttpPost("{id}/issues")][CheckResourcePermission("Project","WriteIssue"][CheckResourceRoles("Project","Manager","Admin")]
public async Task<ActionResult> CreateProjectIssueAsync([ResourceId("Project")][FromRoute]intid,[FromBody]CreateProjectIssueRequestrequest){// Do something}
// When nested issue case[HttpPatch("/api/issues/{id}")][CheckResourcePermission("Project","WriteIssue"][CheckResourceRoles("Project","Manager","Admin")]
public async Task<ActionResult> CreateProjectIssueAsync([ResourceId("Issue")][FromRoute]intid,[FromBody]CreateProjectIssueRequestrequest){}// Configure Services
service.AddResourceIdProvider<IssueToProjectIdProvider>("Issue","Project");publicclassIssueToProjectIdProvider:IResourceIdProvider{publicIssueToProjectIdProvider(Dbdb){this.Db =db;publicasyncTask<object>GetResourceIdFromAsync(objectresourceId){intoriginId=(int)resourceId;varissue=await Db.Issues.FindOneAsync(originId);return issue.ProjectId;}}
Considerations
Allow multiple permissions for one API?
How to work if there are both permission and role?
Research elegant and easy, declarative, intuitive API and resource design
Concept API Design
Considerations
References
The text was updated successfully, but these errors were encountered: