• dedecms手机PC同步更新插件的bug修复和前后端调试的经验


    2017年,由于工作原因,下载了一个dedecms手机和PC同步更新的插件。

    拿到这个插件的时候,出现了手机端和PC,模板混乱生成的问题。

    由于,当时仅仅是使用dedecms,对dede内核的一些函数并不了解。

    所以,对这个bug的修复,一筹莫展。但并没有放弃,接下来的一两年,我对这个问题,无数次的冲锋都倒了下。

    趁着疫情这段时间,加上参加了技术培训,这次又冲锋了一次。成功了。

    一:相关技术基础。

    1.要有一定的PHP基础。遇到PHP代码不要怕。能读懂每段代码的意思。

    2.要对dede的缓存有一些了解。dede的系统配置,都会生成一个配置文件在服务上。这次,每次访问后台的时候,一些系统配置参数,直接通过文件(而非通过数据库)读取到。这样加快了,dede后台的访问速度。

    3.缓存文件和数据库里的数据,经常会不一样。但由于,生成PC和手机端的时候,模板都是从缓存里读取。因此,如果不及时更新缓存,那更新手机端的时候,就会读取PC端的模板。这就需要,在生成文档之前,进行同步操作。

    二:关于同步操作

    dede是使用JS判断,触发提交事件,到达同步。

    但由于,那个插件在同步缓存的时候,缺少了toke参数,因此出现了混乱。

    只需要,在/dede/m/panduan.php  文件的第112行,增加一个toke输入框就好了。代码如下。

    <input type="hidden" name="token" value="<?php echo $_SESSION['token']; ?>">

    -----------------------------------------------------------------------------------------------------------------------------------------------

    三:调试的经验

    1.使用F12,打开控制台,对前端,后端,都能做调试

    2.要熟悉,控制台network中,post报文的解读,当时也是发现了,post响应失败,才找出这个问题。

    记录一下,么么哒。

  • 相关阅读:
    多选择文件打开对话框
    DirectoryExists
    获取IP地址
    获取WINDOWS特殊文件夹
    WPF WebBrowser
    DELPHI TDownLoadURL下载网络文件
    同步窗体移动 FormMove
    FireMonkey 使用Webbrowser
    网页截取图片
    FormMove
  • 原文地址:https://www.cnblogs.com/cn-oldboy/p/12343706.html
Copyright © 2020-2023  润新知