提交 15686986 authored 作者: GOD_ZYX's avatar GOD_ZYX

修改 session 方式

上级 458faeec
......@@ -2902,6 +2902,11 @@
"parse-json": "^4.0.0"
}
},
"crc": {
"version": "3.4.4",
"resolved": "http://registry.npm.taobao.org/crc/download/crc-3.4.4.tgz",
"integrity": "sha1-naHpgOO9RPxck79as9ozeNheRms="
},
"create-ecdh": {
"version": "4.0.3",
"resolved": "http://registry.npm.taobao.org/create-ecdh/download/create-ecdh-4.0.3.tgz",
......@@ -4380,6 +4385,32 @@
}
}
},
"express-session": {
"version": "1.15.6",
"resolved": "http://registry.npm.taobao.org/express-session/download/express-session-1.15.6.tgz",
"integrity": "sha1-R7QWDIj0KrcP6KUI4xy/92dXqwo=",
"requires": {
"cookie": "0.3.1",
"cookie-signature": "1.0.6",
"crc": "3.4.4",
"debug": "2.6.9",
"depd": "~1.1.1",
"on-headers": "~1.0.1",
"parseurl": "~1.3.2",
"uid-safe": "~2.1.5",
"utils-merge": "1.0.1"
},
"dependencies": {
"debug": {
"version": "2.6.9",
"resolved": "http://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz",
"integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=",
"requires": {
"ms": "2.0.0"
}
}
}
},
"extend": {
"version": "3.0.2",
"resolved": "http://registry.npm.taobao.org/extend/download/extend-3.0.2.tgz",
......@@ -6776,6 +6807,11 @@
}
}
},
"install": {
"version": "0.12.2",
"resolved": "http://registry.npm.taobao.org/install/download/install-0.12.2.tgz",
"integrity": "sha1-6hDpssu1sEhPJQgLJLWzRCnZ9WQ="
},
"internal-ip": {
"version": "3.0.1",
"resolved": "http://registry.npm.taobao.org/internal-ip/download/internal-ip-3.0.1.tgz",
......@@ -8733,8 +8769,7 @@
"on-headers": {
"version": "1.0.1",
"resolved": "http://registry.npm.taobao.org/on-headers/download/on-headers-1.0.1.tgz",
"integrity": "sha1-ko9dD0cNSTQmUepnlLCFfBAGk/c=",
"dev": true
"integrity": "sha1-ko9dD0cNSTQmUepnlLCFfBAGk/c="
},
"once": {
"version": "1.4.0",
......@@ -10009,6 +10044,11 @@
"integrity": "sha1-fe2N+/eHncxg0KZErGdUsoOtF+8=",
"dev": true
},
"random-bytes": {
"version": "1.0.0",
"resolved": "http://registry.npm.taobao.org/random-bytes/download/random-bytes-1.0.0.tgz",
"integrity": "sha1-T2ih3Arli9P7lYSMMDJNt11kNgs="
},
"randombytes": {
"version": "2.0.6",
"resolved": "http://registry.npm.taobao.org/randombytes/download/randombytes-2.0.6.tgz",
......@@ -12190,6 +12230,14 @@
}
}
},
"uid-safe": {
"version": "2.1.5",
"resolved": "http://registry.npm.taobao.org/uid-safe/download/uid-safe-2.1.5.tgz",
"integrity": "sha1-Kz1cckDo/C5Y+Komnl7knAhXvTo=",
"requires": {
"random-bytes": "~1.0.0"
}
},
"unc-path-regex": {
"version": "0.1.2",
"resolved": "http://registry.npm.taobao.org/unc-path-regex/download/unc-path-regex-0.1.2.tgz",
......
......@@ -89,7 +89,9 @@
"cross-env": "^5.2.0",
"crypto-js": "^3.1.9-1",
"express": "^4.16.4",
"express-session": "^1.15.6",
"form-data": "^2.3.3",
"install": "^0.12.2",
"lodash": "^4.17.11",
"md5-node": "^1.0.1",
"multer": "^1.4.1",
......
......@@ -38,7 +38,7 @@ const agentProcessor = () => {
try {
options = {
timeout: 30 * 1000,
url: req.params[0], // .replace(/tenant\//gi, '')
url: req.params[0].replace(/tenant\//gi, ''), //
baseURL: conf.agentApiUrl,
method: req.method,
data: req.body,
......@@ -133,21 +133,8 @@ const agentProcessor = () => {
})
/* 处理特殊请求,在域名为e-learing2时生效 */
let _stoken = ''
for (let i = 0; i < _cookieArr.length; i++) {
if (/_stoken=/gi.test(_cookieArr[i])) {
_stoken = _cookieArr[i].split('=')[1]
break
}
}
if (_stoken) {
headers['stoken'] = _stoken
}
if (global.stoken) {
headers['stoken'] = global.stoken
let opts = { path: '/', domain: '.ezijing.com', expires: null, httpOnly: true }
res.cookie('_stoken', global.stoken, opts)
global.stoken = 0
if (req.session && req.session._stoken) {
headers['stoken'] = req.session._stoken
}
/* 重新转发请求 */
......
const express = require('express')
const session = require('express-session')
const history = require('connect-history-api-fallback')
const path = require('path')
const app = express()
let sessionOpts = {
// 设置密钥
secret: 'a cool secret',
// Forces the session to be saved back to the session store
resave: true,
// Forces a session that is "uninitialized" to be saved to the store.
saveUninitialized: true,
// 设置会话cookie名, 默认是connect.sid
key: 'myapp_sid'
// If secure is set to true, and you access your site over HTTP, the cookie will not be set.
// cookie: {}
}
app.set('port', process.env.SERVER_PORT || 3000)
app.use(session(sessionOpts))
app.use('/', require('./routes'))
app.use(history({ verbose: false, index: '/' }))
......@@ -12,10 +28,9 @@ app.get('/', (req, res) => {
/* 增加 限定条件,如果是 e-learning2 子域名,那么 referer 为指定 域名 否则不能打开 */
if (/^e-learning2\./.test(req.headers.host)) {
if (/(sofia\.tenant\.ezijing)|(sofia-x\.ezijing)|(course\.ezijing)|(course3\.ezijing)/.test(req.headers.referer)) {
global.stoken = req.query.stoken || 0
req.session._stoken = req.query.stoken || 0
res.sendFile(path.join(__dirname, '../client-dist/index.html'))
} else {
global.stoken = 0
res.send('当前页面打开方式不对')
}
} else {
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论