authenticated.js 848 B

12345678910111213141516
  1. export default function ({ store, req, redirect, route }) {
  2. // If nuxt generate, pass this middleware
  3. if (process.server && !req) return
  4. if (!store.state.option.user.logged) {
  5. let ua = store.state.option.userAgent.toLowerCase()
  6. if (ua.match(/micromessenger/i) && ua.match(/micromessenger/i)[0] === 'micromessenger' && req.url.indexOf('?code') === -1) {
  7. // 判断是微信浏览器,且不存在code
  8. return redirect(`/mobile/wechat/toggle?url=${route.path}`)
  9. } else if (ua.match(/micromessenger/i) && ua.match(/micromessenger/i)[0] === 'micromessenger' && req.url.indexOf('?code') > -1) {
  10. // 判断是微信浏览器,且存在code
  11. return redirect(`/mobile/wechat?url=${route.path}`)
  12. } else {
  13. return redirect(`/auth/login?returnUrl=${'http://' + req.headers.host + route.fullPath}`)
  14. }
  15. }
  16. }