var express = require('express')
var cors = require("cors")
var session = require("express-session")
var bodyParser = require("body-parser");
var whitelist = require("./config/whitelist.json")
var userlist = require("./config/user.json")
var app = express();
console.log('userlist', userlist)
app.use(express.static('./public'))
app.use(cors())
app.use(bodyParser.urlencoded({extended: false}));
app.use(session({
secret: +new Date()+"abc",
cookie: {maxAge: 10 * 1000}
}))
app.all('*', function (req, res, next) {
res.header("Access-Control-Allow-Origin", "http://localhost:8080");
res.header("Access-Control-Allow-Headers", "Content-Type,Content-Length, Authorization, Accept,X-Requested-With");
res.header("Access-Control-Allow-Methods", "PUT,POST,GET,DELETE,OPTIONS");
res.header("Access-Control-Allow-Credentials", true);
res.header("X-Powered-By", ' 3.2.1')
if (req.method == "OPTIONS") res.send(200);/*讓options請(qǐng)求快速返回*/
else next();
});
app.get("", function (req, res) {
res.send("home")
})
app.get("/", function (req, res) {
console.log("It works! version: ", process.env.npm_package_version);
console.log("req-cookie", req.headers.cookie);
res.send("It works! version: " + process.env.npm_package_version);
});
// 登錄接口
app.post("/login", function (req, res, next) {
let code, msg, data;
const {username, password} = req.body;
if (username && userlist[username] === password) {
req.session.username = username;
code = 0;
msg = "success";
data = "登錄成功"
} else {
code = -1;
msg = "error";
data = "賬號(hào)或者密碼不正確"
}
res.send({code, msg, data})
})
app.get("/identity", function (req, res, next) {
let code = 0, msg = "", data = {anonymous:true,username:""};
console.log("req.session", req.session);
if (req.session && req.session.username) {
data.anonymous=false;
data.username=req.session.username;
} else {
data.anonymous = true;
}
res.send({data, code})
})
app.listen(3003);
console.log("localhost:3003")
nodejs express服務(wù)端跨域的設(shè)置
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
相關(guān)閱讀更多精彩內(nèi)容
- 昨天完成了將STM32采集到的溫濕度數(shù)據(jù)傳到服務(wù)端,存入Mysql數(shù)據(jù)庫(kù)的操作。今天做的是通過express連接數(shù)...
- 在做一個(gè)vue+node的個(gè)人博客時(shí),突然想如果前臺(tái)在開發(fā)環(huán)境下可以和服務(wù)端連起來測(cè)試就好了。但是由于端口不同,所...
- setHeader(name, value) ; //如果Header中沒有定義則添加,如果已定義則用新的valu...
- 《擺渡人》上映 和好友約好一起貢獻(xiàn)票房 MAX大廳 座無虛席 起初決定來看這部電影完全是因?yàn)椤百R歲片”這個(gè)標(biāo)簽 后...