Browse Source

token

master
pengjun 2 years ago
parent
commit
2725ab4128
  1. 9
      src/api/request.js
  2. 7
      src/components/patientRegister/PatientRegisterEdit.vue
  3. 5
      src/store/index.js
  4. 30
      src/utlis/istoken.js
  5. 11
      src/views/login/Login.vue

9
src/api/request.js

@ -5,6 +5,7 @@ import axios from "axios";
import { yztoken } from "@/utlis/istoken";
import mm from "@/utlis/mm";
import { Message } from "element-ui";
const instance = axios.create({
baseURL: mm.apiurl,
timeout: 5000,
@ -12,9 +13,13 @@ const instance = axios.create({
//请求拦截
instance.interceptors.request.use(
function (config) {
yztoken();
async function (config) {
console.log('old token:',localStorage.getItem("token"))
console.log('old expires_in',localStorage.getItem("expires_in"))
await yztoken();
let token = localStorage.getItem("token");
let tokentype = localStorage.getItem("tokentype");
config.headers["Access-Control-Allow-Origin"] = "*";
// config.headers.ContentType = 'application/x-www-form-urlencoded'

7
src/components/patientRegister/PatientRegisterEdit.vue

@ -499,17 +499,16 @@ export default {
medicalPackageId: null, //
patientName: "", //
birthDate: "", // 2012-01-29
sexId: "U", // U
sexId: "9", // U
age: null, //
jobCardNo: "", //
medicalCardNo: "", //
maritalStatusId: "U", //
maritalStatusId: "9", //
medicalTypeId: null, //
personnelTypeId: null, //
jobPost: "", //
jobTitle: "", //
photo:
"https://cube.elemecdn.com/6/94/4d3ea53c084bad6931a56d5158a48jpeg.jpeg", //
photo:"https://cube.elemecdn.com/6/94/4d3ea53c084bad6931a56d5158a48jpeg.jpeg", //
salesman: "", //
sexHormoneTermId: null, //
isNameHide: "N", //

5
src/store/index.js

@ -51,11 +51,11 @@ export default new Vuex.Store({
medicalPackageId: null, //套餐
patientName: "", //姓名
birthDate: "", //字符串 如:2012-01-29
sexId: "U", //性别 默认未知U
sexId: "9", //性别 默认未知U
age: null, //年龄
jobCardNo: "", //工卡号
medicalCardNo: "", //体检卡号
maritalStatusId: "U", //婚姻状况 默认未知
maritalStatusId: "9", //婚姻状况 默认未知
medicalTypeId: null, //体检类别
personnelTypeId: null, //人员类别
jobPost: "", //职务
@ -215,6 +215,7 @@ export default new Vuex.Store({
"id=asbitemId"
),
});
console.log(`/api/app/register-asbitem/in-patient-register-id/${id}`,context.state.dict.asbItem)
}
}
);

30
src/utlis/istoken.js

@ -2,14 +2,17 @@ import moment from "moment";
import axios from "axios";
import mm from "@/utlis/mm";
export const yztoken = () => {
export const yztoken = async () => {
console.log("验证");
let dqtime = parseInt(new Date().getTime() / 1000); // 当前时间的时间戳
let tokentime = parseInt(window.localStorage.getItem("expires_in")); //登录缓存后的时间戳
if (dqtime > tokentime - 10) {
//let dqtime = parseInt(new Date().getTime() / 1000); // 当前时间的时间戳
//let tokentime = parseInt(window.localStorage.getItem("expires_in")); //登录缓存后的时间戳
let dqtime = new Date().getTime(); // 当前时间的时间戳
let expires_in = parseInt(window.localStorage.getItem("expires_in"))
console.log("dqtime / expires_in",dqtime,expires_in)
if (dqtime > expires_in) {
console.log("重新拉取");
//少于300秒 重新拉取
axios
await axios
.post(
mm.apiurl + "/connect/token",
{
@ -24,16 +27,23 @@ export const yztoken = () => {
}
)
.then((res) => {
console.log('connect/token',res.data)
writetoken(res.data.expires_in);
window.localStorage.setItem("token", res.data.access_token);
window.localStorage.setItem("refresh_token", res.data.refresh_token);
console.log('new token:',localStorage.getItem("token"))
console.log('new expires_in',localStorage.getItem("expires_in"))
});
}
};
export const writetoken = (addtime) => {
let date = moment();
date.add(addtime, "s");
let lasttime = parseInt(new Date(date).getTime() / 1000);
console.log(lasttime);
window.localStorage.setItem("expires_in", lasttime); //写入计算过的时间戳
//let date = moment();
let lasttime = new Date(new Date().getTime() + (addtime - 2) * 1000).getTime()
// date.add(addtime, "s");
// let lasttime = parseInt(new Date(date).getTime() / 1000);
// console.log(lasttime);
window.localStorage.setItem("expires_in", lasttime); //写入 失效的时间戳
};

11
src/views/login/Login.vue

@ -38,6 +38,8 @@
import { lognis } from "@/request/ruquset";
import { yzstr } from "@/utlis/validate.js";
import { yztoken, writetoken } from "@/utlis/istoken";
import mm from "@/utlis/mm";
export default {
data() {
return {
@ -81,7 +83,7 @@ export default {
// }); "http://81.70.217.145:9529/connect/token",
this.$axios
.post(
"http://ver.wh613.com:9529/connect/token",
mm.apiurl + "/connect/token",
{
client_id: "Peis_App",
grant_type: "password",
@ -96,16 +98,13 @@ export default {
}
)
.then((res) => {
console.log(res.data)
writetoken(res.data.expires_in);
window.localStorage.setItem("token", res.data.access_token);
window.localStorage.setItem(
"refresh_token",
res.data.refresh_token
);
window.localStorage.setItem("refresh_token",res.data.refresh_token);
// window.localStorage.setItem("expires_in", res.data.expires_in);
window.localStorage.setItem("tokentype", res.data.token_type);
window.localStorage.setItem("user", this.form.Username);
console.log(res);
this.$message.success("登录成功");
this.$router.push({ path: "home" });
});

Loading…
Cancel
Save