我正在尝试在打字稿项目中使用类验证器模块。但是,当我编译打字稿时会发出以下警告:
src/main/ts/domain/Order.ts(1,48): error TS2307: Cannot find module 'class-validator'.
Run Code Online (Sandbox Code Playgroud)
它抱怨的行看起来像这样:
import { IsInt, IsNotEmpty, IsDate, Min } from "class-validator";
Run Code Online (Sandbox Code Playgroud)
我有这样的吞咽设置:
var gulp = require('gulp');
var ts = require('gulp-typescript');
var tsProject = ts.createProject("tsconfig.json");
gulp.task('default', function() {
return tsProject.src()
.pipe(tsProject())
.js.pipe(gulp.dest("target/main/js"));
});
Run Code Online (Sandbox Code Playgroud)
我的 tsconfig.json 看起来像这样:
{
"files": [
"src/main/ts/**/*.ts"
],
"compilerOptions": {
"experimentalDecorators": true,
"noImplicitAny": true,
"target": "es6"
}
}
Run Code Online (Sandbox Code Playgroud)
想法?
我正在审查这个Angular 5表单youtube教程,其中Sebastian最初有一个名为的表单选择器app-form01,但是他删除了该app-部分.IIUC自定义元素应该具有-.这放松了吗?
如果我们使用<router-outlet>组件(任何组件)然后将a放到routerLink该组件中的另一个组件,链接是否始终呈现链接到<router-outlet>当前活动组件的组件?
换句话说,组件routerLink属性是否始终与<router-outlet>组件内部配对?
从如何确保对在线资源的访问的一般开发角度来看,我对此感到很好奇。我们使用以下firebase配置参数初始化webapp:
apikeyauthdomainprojectiddatabaseurlmessagesenderid服务器如何使用它们来确保请求有效?主要是为什么其他人不能只从应用程序中提取这些参数,然后创建另一个对“ Evil”使用相同参数的“ Evil”应用程序。
“邪恶”将包括创建一个具有与真实应用程序相同的凭据的其他应用程序,使用纯电子邮件/密码注册表单使用真实应用程序中包含的相同凭据对用户进行注册,然后在用户登录后执行甚至更多的“邪恶”。
同样是简单的节点快速js应用程序,我们希望使用上述参数来确保对其的访问安全,从应用程序请求生命周期的角度来看,这将如何工作?
1)快递收到请求
2)快递检查...
最后,openid-connect是如何工作的?换句话说,它是完全遵循openid-connect规范还是仅针对Firebase构建的基于自定义的安全解决方案?
javascript node.js firebase openid-connect firebase-authentication
根据我对如何设置对亚马逊 s3 存储桶的安全访问的回顾,我们首先生成一个 IAM 用户,然后绑定一个安全策略,允许对该用户进行 s3 访问。之后我们可以为存储桶生成 API 密钥,该密钥可以对存储桶访问请求进行身份验证。目前我的理解是这样的,如有遗漏还请指正。
我假设 API 密钥应该仅在服务器端(The Secret Access Key)。换句话说,将它们直接放在网络应用程序中不安全吗?因此,我们首先必须将数据发送到我们的服务器,然后我们可以使用 API 密钥将其发送到存储桶?
有什么方法可以确保从 Web 应用程序直接访问亚马逊 s3 存储桶的安全吗?
根据与 @CaesarKabalan 的讨论,听起来允许这样做的方法是:
1) 创建一个 IAM 用户,该用户可以创建可通过 Amazon Cognito 进行身份验证的身份 - 让我们将此步骤分配的凭证称为 Cognito 凭证。
2) 用户使用 Google 等登录 Web 应用程序
3) Web 应用程序向 Web 应用程序的服务器(可能是 lambda 函数)发出请求,以使用 Amazon Cognito 注册用户
4) Web 应用程序现在直接从 Amazon Cognito 获取用户的凭证,并使用这些凭证将数据发送到 s3 存储桶。
我认为这就是我们在概念上的处境。现在是时候进行测试了!
javascript amazon-s3 amazon-web-services single-page-application
该文档描述了如何通过控制台标记 s3 对象。我们如何使用 lambda 函数以编程方式执行此操作?
是否可以一次性卸载所有 vscode 插件?我安装了几个不同的 HTML 插件,现在它破坏了我的 HTML 标记,所以我想重置整个编辑器。
我正在阅读类验证器库的代码,它具有以下isInstance方法:
/**
* Checks if the value is an instance of the specified object.
*/
isInstance(object: any, targetTypeConstructor: new (...args: any[]) => any) {
return targetTypeConstructor
&& typeof targetTypeConstructor === "function"
&& object instanceof targetTypeConstructor;
}
Run Code Online (Sandbox Code Playgroud)
关于如何去理解类型有new (...args: any[]) => any什么想法吗?这是我第一次看到这种构造...
我正在看这行代码options?: { name?: string, async?: boolean }。该类型的正确术语是{ name?: string, async?: boolean }什么?它看起来像Java中的“匿名类”定义,但我猜它被称为其他名称。
我回顾这段位的代码,是一个选择滤波器组件模型为TodoS:
export enum VISIBILITY_FILTER {
SHOW_COMPLETED = 'SHOW_COMPLETED',
SHOW_ACTIVE = 'SHOW_ACTIVE',
SHOW_ALL = 'SHOW_ALL'
}
export type TodoFilter = {
label: string;
value: VISIBILITY_FILTER;
};
export const initialFilters: TodoFilter[] = [
{ label: 'All', value: VISIBILITY_FILTER.SHOW_ALL },
{ label: 'Completed', value: VISIBILITY_FILTER.SHOW_COMPLETED },
{ label: 'Active', value: VISIBILITY_FILTER.SHOW_ACTIVE }
];
Run Code Online (Sandbox Code Playgroud)
看起来好像所有这些都可以替换为:
export enum VISIBILITY_FILTER {
SHOW_COMPLETED = 'Completed',
SHOW_ACTIVE = 'Active',
SHOW_ALL = 'All'
}
Run Code Online (Sandbox Code Playgroud)
因此,active过滤器属性将仅由枚举键入VISIBILITY_FILTER,我们将在模板中循环遍历 then enum,如下所示(伪代码):
<option *ngFor="let filter of …Run Code Online (Sandbox Code Playgroud) javascript ×5
typescript ×4
angular ×3
amazon-s3 ×2
aws-lambda ×1
aws-sdk ×1
firebase ×1
gulp ×1
html ×1
instanceof ×1
node.js ×1
validation ×1