开发者社区 > 云原生 > Serverless > 正文

想请问下,我fc(http trigger)页面上传了新代码,webIDE显示也是新代码,可是页面打

想请问下,我fc(http trigger)页面上传了新代码,webIDE显示也是新代码,可是页面打开还是老代码,我可以进行些什么操作?

展开
收起
有问必答 2023-05-20 18:17:13 134 0
4 条回答
写回答
取消 提交回答
  • 公众号:网络技术联盟站,InfoQ签约作者,阿里云社区签约作者,华为云 云享专家,BOSS直聘 创作王者,腾讯课堂创作领航员,博客+论坛:https://www.wljslmz.cn,工程师导航:https://www.wljslmz.com

    如果您修改了阿里云函数计算的代码,但是页面打开还是老代码,有以下几种可能的原因:

    1. 函数自身缓存:函数计算会针对同一个函数生成缓存,如果您修改了函数代码,但是函数的缓存还没有失效,调用时可能会返回旧代码。这个时候可以尝试手动清除函数的缓存,方法是在函数的高级设置中,点击清除缓存按钮。

    2. CDN 缓存:如果您的应用通过 CDN 加速访问,可能会存在 CDN 缓存导致页面打开还是老代码的问题。您可以在 CDN 控制台中找到相应的加速域名,在缓存管理中进行清理。

    3. 多版本同时存在:函数计算支持多版本的管理,如果您之前在控制台创建过多个版本,并且在请求时没有指定版本,函数计算会默认选择最新的版本。这个时候可以尝试在请求时指定版本,以确保访问到最新代码。

    4. 代码上传失败:在上传代码时,可能发生上传失败的情况,导致部分代码上传失败。您可以尝试重新上传代码,并查看上传过程是否有报错信息出现。在上传完成后,也建议您在控制台中查看函数的代码,确保上传成功。

    如果以上的方法都没有解决您的问题,建议您在函数计算控制台中查看运行日志和错误日志,以更好地定位问题。

    2023-05-21 22:27:51
    赞同 展开评论 打赏
  • 可能是阿里云函数计算 fc 的缓存机制导致的。阿里云函数计算 fc 会对代码进行缓存,以提高函数执行的效率。当您上传新代码时,由于缓存未及时更新,可能导致旧代码仍然被执行。

    解决方法:您可以在阿里云函数计算 fc 控制台的函数代码页面中,点击“高级设置”选项,将“代码缓存”设置为“不缓存”,这样每次调用函数时都会重新加载新代码。同时,您也可以在上传新代码后,手动刷新缓存以确保新代码能够被及时加载。具体方法为在函数配置页面,点击“函数管理”>“刷新缓存”。

    2023-05-21 07:59:00
    赞同 展开评论 打赏
  • 十分耕耘,一定会有一分收获!

    楼主你好,首先,你可以尝试清除浏览器缓存,然后重新打开页面。如果问题仍然存在,请检查你部署的代码是否正确。你可以进入函数计算控制台,找到对应的函数服务,然后查看代码是否正确上传。

    另外,你也可以通过在前端请求中添加随机参数避免浏览器缓存,例如:

    fetch('/api/data?random=' + Math.random())
    

    这样每次请求时会带上一个不同的随机数,从而避免浏览器缓存。

    2023-05-20 23:46:13
    赞同 展开评论 打赏
  • 可以点击部署

    此答案来自钉钉群“阿里函数计算官网客户"

    2023-05-20 19:32:26
    赞同 展开评论 打赏

快速交付实现商业价值。

相关产品

  • 函数计算
  • 相关电子书

    更多
    Hologres Serverless之路:揭秘弹性计算组 立即下载
    Serverless开发平台: 让研发效能再提升 立即下载
    Serverless 引领云上研发新范式 立即下载