小编tkl*_*zig的帖子

在iPad Web应用程序模式下跨会话存储MVC3身份验证数据

我有一个MVC3项目,可以在Web应用程序模式下在iPad上运行.我使用FormsAuthentication实现登录/注销功能,该功能调用FormsAuthentication.SetAuthCookie(model.Username, true)将登录信息存储到cookie中.在包括safari mobile在内的所有主要浏览器中,cookie会在会话期间持久保存.只有在网络应用程序模式下,有时会在浏览网络应用程序时清除cookie,并且在关闭网络应用程序后肯定会删除它.是否有可能在Web-app模式下跨会话保存登录信息?

我知道可以使用HTML5本地存储功能,但我不知道如何FormsAuthentication.SetAuthCookie(model.Username, true)使用新的本地存储手动实现.除此之外,我不确定本地存储是否足够安全以存储此类关键数据.

ipad asp.net-mvc-3 iphone-standalone-web-app

1
推荐指数
1
解决办法
951
查看次数

打字稿:Map <>与strictNullChecks的使用

给定以下简单的类:

class Observer {
        private subscribers: Map<string, Array<((data: any) => void)>> = new Map();     

        public subscribe(event: string, callback: (data: any) => void) {
            if (!this.subscribers.has(event)) {
                this.subscribers.set(event, []);
            }

            this.subscribers.get(event).push(callback); //tsc says: Object is possibly 'undefined'
        }
    }
Run Code Online (Sandbox Code Playgroud)

此外,在tsconfig.json中,标记strictNullChecksstrict被启用。

尽管subscribers已检查当前事件的键,但打字稿编译器会抱怨上面显示的错误消息(this.subscribers.get(event)可能未定义)。

如果我不是完全错误,在这种情况下this.subscribers.get(event)绝对不能undefined

我如何摆脱该信息?

javascript dictionary typescript strictnullchecks

1
推荐指数
1
解决办法
1181
查看次数