这是我的date-formatter-by-timezone.pipe.ts管子
import { Pipe, PipeTransform } from '@angular/core';
import { CookieService } from 'ngx-cookie-service';
@Pipe({
name: 'dateFormatterSecByTimezone'
})
export class DateFormatterSecByTimezonePipe implements PipeTransform {
constructor(private cookieService: CookieService) {}
timezone:any = parseInt(this.cookieService.get('TM_Z')) * 1000;
caculateTime(date , timezone){
//some code here ...
}
transform(date: any){
return this.caculateTime(date , this.timezone)
}
}
Run Code Online (Sandbox Code Playgroud)
这是规范文件date-formatter-sec.pipe.spec.ts:
import { DateFormatterSecByTimezonePipe } from './date-formatter-sec-by-
timezone.pipe';
describe('DateFormatterSecByTimezonePipe', () => {
it('create an instance', () => {
const pipe = new DateFormatterSecByTimezonePipe();
expect(pipe).toBeTruthy();
});
});
Run Code Online (Sandbox Code Playgroud)
在规范文件中,我收到此错误: …
我有一个启用Windows应用程序的dotnet核心api应用程序。我们有一堆具有特殊权限“ admin”并存储在数据库中的用户,其余所有用户都具有默认权限“ user”。我希望用户对数据库中的所有人有额外的要求。我也想存储更多信息,例如emailid,员工编号(我必须手动从LDAP查询)
我以为我会有一个API,说api/auth它将捕获当前用户并根据数据库和ldap查询添加声明,其他api端点都可以使用它。
但是我无法获得如何在不同的api端点之间添加和保留声明。
有可能吗,或者这是个好方法?我还有第二个选择,可以在每个api调用中访问数据库。
编辑1:我编写了一个中间件,它可以拦截所有api请求并搜索LDAP /数据库,创建一个ClaimsIndentity并将其添加到中Users.Identity。然后在整个通话中都可以使用。
编辑2:当我是@Ondra Starenko的答案时,我无法引用IClaimsTransformer或app.UseClaimsTransformation。还有什么我需要包括的。
平台:.NET Core 2.1.3