博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
nodejs实现cas客户端
阅读量:6904 次
发布时间:2019-06-27

本文共 2351 字,大约阅读时间需要 7 分钟。

hot3.png

const express = require('express');const ConnectCas = require('connect-cas2');const bodyParser = require('body-parser');const session = require('express-session');const cookieParser = require('cookie-parser');const MemoryStore = require('session-memory-store')(session);const app = express();app.use(cookieParser());app.use(session({    name: 'NSESSIONID',    secret: 'Hello I am a long long long secret',    //resave: true,//添加这行    //saveUninitialized: true,//添加这行    store: new MemoryStore()  // or other session store}));const casClient = new ConnectCas({    //debug: true,    ignore: [        /\/ignore/    ],    match: [],    servicePrefix: 'http://130.51.23.165:3000',    //servicePrefix: 'http://localhost:3000',    serverPath: 'http://130.51.23.165:8180',    paths: {        validate: '/cas/validate',        //validate: '/index',        serviceValidate: '/cas/serviceValidate',        proxy: '',        login: '/cas/login',        logout: '/cas/logout',        proxyCallback: ''    },    ///proxy: false,    redirect: false,    gateway: false,    renew: false,    slo: true,    cache: {        enable: false,        ttl: 5 * 60 * 1000,        filter: []    },    fromAjax: {        header: 'x-client-ajax',        status: 418    }});app.use(casClient.core());// NOTICE: If you want to enable single sign logout, you must use casClient middleware before bodyParser.app.use(bodyParser.json());app.use(bodyParser.urlencoded({extended: true}));app.get('/logout', casClient.logout());// or do some logic yourselfapp.get('/logout', function (req, res, next) {    // Do whatever you like here, then call the logout middleware    casClient.logout()(req, res, next);});app.get('/', function (req, res) {    // console.log("login.req.session.cas is:")    // console.log(req.session.cas);    if (!req.session.cas.user) {        return next();    }    console.log("login.req.session.cas.user is:")    console.log(req.session.cas.user);    const username = req.session.cas.user;    req.session.loggedIn = true;    req.session.username = username;    // ...    //return next();    // Great, we logged in, now redirect back to the home page.    //return res.send('

You are logged in.

'); return res.send('

You are logged in. Your username is ' + req.session.cas.user + '. Log Out

');});app.listen(3000);

转载于:https://my.oschina.net/u/2464371/blog/2875099

你可能感兴趣的文章
java基础4:深入理解final关键字
查看>>
12.C语言提高(二)
查看>>
The role of Roles
查看>>
frame buffer属性打印
查看>>
Docker安装与入门
查看>>
开源软件没你想象中那么安全,Java 开发者尤其要警惕
查看>>
GnuCash 3.5 发布,跨平台财务管理软件
查看>>
本周 AI 论文良心推荐,你想 pick 谁?
查看>>
化繁为简 海云捷迅为企业提供应用OpenStack新“姿势”
查看>>
CVPR文章抢先看!这5篇最有趣,不容错过!
查看>>
新型智慧城市建设绘出沈阳“N朵云”
查看>>
为多云平台选择云配置管理工具
查看>>
linux C 获取当前的工作目录
查看>>
快速atof()函数
查看>>
Starting an Interactive Client Process in C++
查看>>
MSSQL-应用案例-日志表设计优化与实现
查看>>
中国移动应该怎样看待云计算
查看>>
网络安全人才平均月薪近万 这五个城市需求最大
查看>>
云安全风险不再是最令人担心的问题?
查看>>
怎样正确地测试和维护防火墙?
查看>>