前端跳转谁来做?

2020-01-20 14:54:36 +08:00
 pmispig

前端要求用户访问 http://abc.com/xxoo#happy 跳转到 http://abc.com/xxoo/xxoo/#happy
我说在 js 里判断就行,
现在前端非要我在 nginx 上 302

5619 次点击
所在节点    程序员
45 条回复
drydiy
2020-01-20 14:56:07 +08:00
这前端直接处理就可以了。
pmispig
2020-01-20 14:56:57 +08:00
@drydiy 我把完整的 js 实现代码都写好粘贴发给他了...
GDC
2020-01-20 14:57:21 +08:00
个人习惯在后端(服务端)做,因为在前端做 需要加载页面后才执行,用户体验不好。
另外从 SEO 角度来说也应该服务端做(如果原地址不使用了)
madewocao
2020-01-20 14:57:28 +08:00
看你们关系好不好,工作量大不大
90d0n
2020-01-20 14:58:37 +08:00
看谁嗓门大
retanoj
2020-01-20 14:58:49 +08:00
这种打一架就行
mxT52CRuqR6o5
2020-01-20 14:59:39 +08:00
如果是 js 用 history api 做跳转,性能和 nginx302 应该差不多
pmispig
2020-01-20 15:00:17 +08:00
@GDC 如果考虑到体验就不应该做这个跳转,因为这个跳转是 vue 同一个页面,指向同一个 index.html 和同一个视图,好像是为了解决 ie 的一个刷新页面丢失 #后面的参数的问题...
我也不知道这种骚操作哪里来的
DelayNoMore
2020-01-20 15:23:04 +08:00
前端 redirect 不就可以了吗?
keepeye
2020-01-20 15:24:41 +08:00
单页的话前端做
q8164305
2020-01-20 15:27:03 +08:00
单页前端做,很简单,就一个 redict 配置就行了啊
langjun
2020-01-20 15:37:46 +08:00
结合楼上
SPA:前端合理,
MPA:前端做会在前端多增加一次网络请求,用户体验不好
GDC
2020-01-20 16:00:35 +08:00
@pmispig 对噢,如果你要考虑 # 后面的部分,那只能前端做,因为 # 后的参数是不会发送到服务端的,服务端也没法准确跳转(只能跳到新地址的首页去了)
pmispig
2020-01-20 16:29:38 +08:00
@GDC 对。。你提醒了我,这个只能在前端做,服务器 get 不到 #后面的参数。。
heiheidewo
2020-01-20 16:41:01 +08:00
不管从哪方面讲都是后台做好啊:用户体验 和 SEO。
除非你想偷懒
pmispig
2020-01-20 16:52:50 +08:00
@heiheidewo 从部署的角度来讲,我希望程序是完全自己独立的,按照一般标准就能跑起来,最讨厌要配这个配那个
geekdocs
2020-01-20 17:02:30 +08:00
后端直接跳,不解释。
Xusually
2020-01-20 17:07:12 +08:00
emmm....带了 hashtag,nginx 拿不到 啊,怎么跳
zzzmh
2020-01-20 17:07:47 +08:00
如果是整站 SPA,就前端了,我是后端也学了 vue cli,这个用 vue-router 跳一跳美滋滋,还不刷新页面,不占用服务器算力
hronro
2020-01-20 17:08:43 +08:00
你们 nginx 的配置难道不是前端在写吗?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/639446

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX