Kriss
V2EX  ›  问与答

为啥有些网站接口返回 html 页面?比如 v2ex

  •  
  •   Kriss · Jun 1, 2020 · 6417 views
    This topic created in 2357 days ago, the information mentioned may be changed or developed.

    问了下群友,大概有如下回答:

    • seo 优化
    • 提高响应速度
    • 历史遗留问题?以前没有前后分离概念,都是服务器渲染?

    我个人猜测是提高访问速度。 比如当帖子创建,修改,回复的时候,后端生成静态页面。当查询的时候就直接返回生成页面。

    39 replies  •  2020-06-02 12:02:27 +08:00
    2kCS5c0b0ITXE5k2
    2kCS5c0b0ITXE5k2
    Jun 1, 2020
    1
    前后端分离也能 服务器渲染啊 XD
    misaka19000
    misaka19000
    Jun 1, 2020
    2
    那么为什么不直接返回 HTML 页面?
    Kriss
    Kriss
    OP
    Jun 1, 2020
    3
    @misaka19000 不太懂。我也是个人猜测吧。不知道为什么要这样设计,b 站的主页接口也是返回静态页面,v2 全站的接口好像都是返回页面
    misaka19000
    misaka19000
    Jun 1, 2020
    4
    @HHAO2019 #3 我的意思是一般都是返回动态渲染过的页面,这是一种很正常的做法
    Kriss
    Kriss
    OP
    Jun 1, 2020
    5
    @misaka19000 和返回数据相比,返回页面会有什么优势嘛?
    reus
    reus
    Jun 1, 2020 via Android❤️11
    6
    终于也出现只知道接口不知道页面的新一代了啊
    monsterxx03
    monsterxx03
    Jun 1, 2020 via Android
    7
    程序员的代沟😂
    MrKou47
    MrKou47
    Jun 1, 2020 via iPhone❤️1
    8
    这就是前端的后浪吗🐶
    misaka19000
    misaka19000
    Jun 1, 2020
    9
    @HHAO2019 #5 开发简单
    Kriss
    Kriss
    OP
    Jun 1, 2020
    10
    @reus @monsterxx03 前辈能详细说说嘛?/xk
    Kriss
    Kriss
    OP
    Jun 1, 2020
    11
    @MrKou47 我是做后端的,没见过这种玩法
    ccraohng
    ccraohng
    Jun 1, 2020 via Android
    12
    网站不吐页面吐什么
    hanyceZ
    hanyceZ
    Jun 1, 2020
    13
    马克。。。表示只知道返回接口数据。。。
    dcalsky
    dcalsky
    Jun 1, 2020 via Android
    14
    兄弟你本末倒置了。是用了后端模板引擎渲染,才会返回 html 。相反如果纯粹使用 restful api,那会返回数据。这是一个选择问题,如果选择 restful api 那前端工作量就要提高,毕竟是需要做状态管理以及 DOM 动态增删的。
    Kriss
    Kriss
    OP
    Jun 1, 2020
    15
    @ccraohng 我熟知的是,前后端交互是 json 。所以一下有点懵
    yty2012g
    yty2012g
    Jun 1, 2020
    16
    我们这里有两个原因:第一,直出性能好。第二,后端发版比前端发版容易,影响更小一点。
    dcalsky
    dcalsky
    Jun 1, 2020 via Android
    17
    补充:如果是一个接口,但又返回了 html,那就是为了方便不用管理前端状态,而直接替换 DOM
    Kriss
    Kriss
    OP
    Jun 1, 2020
    18
    @dcalsky 噢噢 懂了。 看了下我们公司的后台也是返回 html,用的模板引擎。/xk
    ccraohng
    ccraohng
    Jun 1, 2020 via Android
    19
    你所指的前,这里是浏览器,并不是 “前端”。
    guanhui07
    guanhui07
    Jun 1, 2020
    20
    接口返回 xml 或 json 好了, 让后端拼接 html 接口返回 html 给前端 我也不喜欢 .
    knva
    knva
    Jun 1, 2020
    21
    后浪
    adrianduan
    adrianduan
    Jun 1, 2020 via iPhone❤️1
    22
    “为什么手机电池不做成可拆卸的”
    aureole999
    aureole999
    Jun 1, 2020
    23
    你说的这个我们一般不叫接口,叫请求。你直接在地址栏里输入地址,这时候前端在哪呢?还不是得浏览器下载 html 页面,再执行其中你自己写的 js 。现在一些网站用单页面应用,也就是用你说的接口来实现动态变化,但单页面也至少一开始得有个页面请求啊。


    发展顺序是这样的:静态网站(直接返回静态的 html ) -> 动态网站( CGI,JSP/Servlet 等动态取得数据来生成 html )-> 单页应用网站


    现在几乎见不到静态网站了(谁还记得 FrontPage 和网页三剑客)。大多数都是动态和单页之间的混合型。
    Felldeadbird
    Felldeadbird
    Jun 1, 2020
    24
    返回 HTML 好处是不需要前端作多一次渲染。

    很多以前项目,前后分离都不彻底,接口返回不一定全是 J 结构的。
    tlday
    tlday
    Jun 1, 2020
    25
    那个...
    你们知道 asp/jsp 吗...
    你们还记得为什么 php 代码要写在 html 标签里面了吗...
    QlanQ
    QlanQ
    Jun 1, 2020
    26
    后浪
    NotFoundEgg
    NotFoundEgg
    Jun 1, 2020
    27
    JSP 时代也是返回页面的 el 表达式乱七八糟的 学过 Java 的应该都知道
    cgpiao
    cgpiao
    Jun 1, 2020 via iPhone
    28
    感觉到代沟了(非贬义)
    anmie
    anmie
    Jun 1, 2020
    29
    哎 我们已经老了,连技术都已经隔代产生代沟了。。。
    NasirQ
    NasirQ
    Jun 1, 2020
    30
    真*代沟....
    Caratpine
    Caratpine
    Jun 1, 2020
    31
    模板引擎渲染的,以前的 Web 框架都自带模板引擎,比如 Django, Flask.

    Flask 比较简单,可以看一下模板渲染的过程。
    revalue
    revalue
    Jun 1, 2020
    32
    看来我不是最菜的。这个前端必须会哦,不然怎么吹所谓的 SSR
    lewinlan
    lewinlan
    Jun 1, 2020 via Android
    33
    问就是历史遗留问题……
    TsuiiusT
    TsuiiusT
    Jun 1, 2020
    34
    嗯?没有一个返回 html 的请问页面从哪里来?
    jzmws
    jzmws
    Jun 1, 2020
    35
    时代发展太快了 , 都忘记服务器渲染了, 前后端分离开发就是爽
    tingyunsay
    tingyunsay
    Jun 2, 2020 via iPhone
    36
    seo,不然前后分离只有 json,爬虫看不到
    wusheng0
    wusheng0
    Jun 2, 2020 via Android
    37
    你说的接口是直接访问的地址吗?
    难道说 api 返回 html ?
    lumotian
    lumotian
    Jun 2, 2020
    38
    感觉你们都没看懂楼主说的什么,楼主说的 页面加载完了 又发了一个异步接口返回的 html 代码的那种情况
    julyclyde
    julyclyde
    Jun 2, 2020
    39
    现在的前端界真是祸害……
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1765 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 80ms · UTC 16:11 · PVG 00:11 · LAX 08:11 · JFK 11:11
    ♥ Do have faith in what you're doing.