2017-01-14 10:17:43 3496次浏览 6条回答 0 悬赏 10 金钱

目前用的是yii2框架,渲染使用的是smarty模板,架构是LNMP(也就是linux + nginx + mysql + php)。
————————————————————以上是背景线————————————————————————————
关于第一次加载页面的时,需要到数据库查询数据,分配查询到的数据,渲染到模板。当用户触发前端页面的js的时候,会发送ajax请求去到控制器获取相应数据。
感觉这样做的话,比较麻烦,首先,既然首次加载页面查询的数据和ajax加载查询的数据有共性的东西,那么为什么不在加载页面后,直接发送ajax数据去请求数据回来渲染呢?所以,我在首次加载页面的时候并没有去数据库查询数据,而是等到页面加载完后触发ajax请求去加载数据,但是公司前端说这样是不可以的,没有一家公司是首页加载的时候就马上发送ajax请求出去。
————————————————————————————————————————————————————————————
问题来了,请问,遇到这样的情况,应该如何分析利弊呢?

  • 回答于 2017-01-14 10:40 举报

    ajax不利于搜索引擎 收录,而且当ajax响应不及时的时候用户体验也没那么好

    1 条回复
    回复于 2017-01-14 11:02 回复

    那如果本身这些数据是客户个人数据,没必要让搜索引擎收录的话,是否就可以考虑全部走ajax获取

  • 回答于 2017-01-14 11:19 举报

    楼上说得很对,全ajax都可以,感觉会就多写了js和多了http请求数

  • 回答于 2017-01-15 16:23 举报

    没有一家公司是首页加载的时候就马上发送ajax请求出去。

    那,你们就来做第一家咯。

    这个理由不成立。现在都是用户体验至上,哪个用户会在意你底层是怎么实现的呢。

  • 回答于 2017-01-17 11:38 举报

    不好意思,并不是所有公司都用模板的。
    可以这样说,有重构工程师的公司,页面上的所有数据,全部是ajax来的。
    因为重构工程师属于美术部门,他们不懂ajax,所以会有前端工程师拿到网页后加上ajax。

    所以你说的

    没有一家公司是首页加载的时候就马上发送ajax请求出去。

    是错误的

  • 回答于 2017-01-17 11:44 举报

    鉴于楼主没有证据反驳,我给个链接让楼主去反驳吧,某页游运营网站

  • 回答于 2017-01-18 15:35 举报

    用ajax动态获取数据,如果快到一定程度,是没有感觉的,也没啥区别。
    但是
    如果用户的电脑不好,网速不好,性能不好,体验就相当差,因为输入网址以后,进度条立刻读完了,但是发现没有内容。
    ajax获取的是纯数据的话,就需要动态在网页上赋值,很浪费性能和时间。
    如果ajax获取的是整个页面,那就很浪费请求次数,打个比方,如果你做并发10000,理论上,1秒10000个用户能看到你的首页,但是如果你用ajax做,请求是2次,并发10000的情况下,只有5000个用户能访问。
    我只能编到这了...咳咳,我说的不一定对,程序员还是要自己思考

您需要登录后才可以回答。登录 | 立即注册
箩葡萄
见习主管

箩葡萄

注册时间:2016-10-31
最后登录:2017-04-15
在线时长:4小时48分
  • 粉丝1
  • 金钱295
  • 威望0
  • 积分335

热门问题