guang.js
3.21 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
/**
* Created by TaoHuang on 2017/2/21.
*/
'use strict';
const helpers = global.yoho.helpers;
const TYPE = require('../type');
const MOBILE_DOMAIN = '//guang.m.yohobuy.com';
module.exports = [
// 老的首页
{
type: TYPE.redirect,
origin: (req) => {
return req.path === '/';
},
target: (req) => {
return helpers.urlFormat(`/${req.yoho.channel}/`, null, 'guang');
}
},
// 首页
{
type: TYPE.rewrite,
origin: /^\/(boys|girls|kids|lifestyle)(\/*)$/,
target: (req, match, p1) => {
req.query.channel = p1;
return `/guang/?chanel=${p1}`;
}
},
// 老的首页 + 类型 + 翻页
{
type: TYPE.redirect,
origin: req => /index\/index/i.test(req.path),
target: (req) => {
return helpers.urlFormat(
`/${req.yoho.channel}-t${req.query.type || 0}${req.query.page ? '-p' + req.query.page : ''}/`,
null,
'guang'
);
}
},
// 首页 + 类型
{
type: TYPE.rewrite,
origin: /^\/(boys|girls|kids|lifestyle)-t([\d]+)(\/*)$/,
target: (req, match, p1, p2) => {
req.query.channel = p1;
req.query.type = p2;
return `/guang/?chanel=${p1}&type=${p2}`;
}
},
// 列表页 + 类型 + 翻页
{
type: TYPE.rewrite,
origin: /^\/(boys|girls|kids|lifestyle)-t([\d]+)-p([\d]+)(\/*)$/,
target: (req, match, p1, p2, p3) => {
req.query.channel = p1;
req.query.type = p2;
req.query.page = p3;
return `/guang/index/index/?type=${p2}&channel=${p3}`;
}
},
// 老的编缉首页
{
type: TYPE.redirect,
origin: (req) => {
return /index\/editor/i.test(req.path);
},
target: (req) => {
let channel = req.yoho.channel;
let authorId = req.query.author_id;
let page = req.query.page;
if (!authorId) {
return helpers.urlFormat(`/${channel}/`, null, 'guang');
}
return helpers.urlFormat(`/author-${channel}-${authorId}${page ? '-p' + page : ''}/`, null, 'guang');
}
},
// 编缉首页
{
type: TYPE.rewrite,
origin: /^\/author-(boys|girls|kids|lifestyle)-([\d]+)(\/*)$/,
target: (req, match, channel, authorId) => {
req.query.channel = channel;
req.query.author_id = authorId;
req.mobileUrl = `${MOBILE_DOMAIN}/author-${channel}-${authorId}/`;
return `/guang/index/editor?channel=${channel}&author_id=${authorId}`;
}
},
// 编缉首页 + 翻页
{
type: TYPE.rewrite,
origin: /^\/author-(boys|girls|kids|lifestyle)-([\d]+)-p([\d]+)(\/*)$/,
target: (req, match, channel, authorId, page) => {
req.query.channel = channel;
req.query.author_id = authorId;
req.query.page = page;
req.mobileUrl = `${MOBILE_DOMAIN}/author-${channel}-${authorId}-p${page}/`;
return `/guang/index/editor?channel=${channel}&author_id=${authorId}&page=${page}`;
}
}
];