You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在在线网站检查、修改并触发onclick函数以获取旧版固件

解决三阳AF 135mm F1.8 FE旧版固件下载问题

问题背景

你修改下载按钮的onclick参数(将FnFileDownload('964','5')改为FnFileDownload('964','4'))后仍下载v5固件,大概率是网站后端对请求参数做了校验,或者FnFileDownload函数内部有逻辑覆盖了你传入的版本号(比如从页面隐藏元素或固定位置读取最新版本)。

控制台尝试方案

  1. 查看函数真实逻辑
    在浏览器控制台输入以下代码,查看FnFileDownload的内部实现,确认参数是否被实际使用:

    console.log(FnFileDownload.toString());
    

    通过输出的源码,判断函数是直接用参数发起请求,还是有额外校验逻辑。

  2. 直接调用修改后的函数
    如果函数本身无额外校验,直接在控制台执行修改后的调用:

    FnFileDownload('964', '4'); // 尝试下载v4
    FnFileDownload('964', '3'); // 尝试下载v3
    
  3. 手动构造下载请求
    如果函数内部有参数覆盖,通过浏览器网络面板抓取v5固件的下载请求,记录请求的URL、方法、请求头和参数,再手动构造请求替换版本号:
    示例(需替换为实际请求信息):

    // 假设请求为POST接口,参数包含fileId和version
    fetch('/en/support/download-process.php', {
      method: 'POST',
      headers: {
        'Content-Type': 'application/x-www-form-urlencoded',
        'Cookie': document.cookie // 带上会话cookie避免权限问题
      },
      body: 'fileId=964&version=4'
    }).then(response => response.blob())
      .then(blob => {
        const link = document.createElement('a');
        link.href = URL.createObjectURL(blob);
        link.download = 'samyang_135mm_f1.8_fe_v4.bin';
        link.click();
        URL.revokeObjectURL(link.href);
      });
    
  4. 处理CSRF校验
    如果请求因CSRF失败,需从页面隐藏输入框(如<input name="csrf_token">)或cookie中获取CSRF token,添加到请求参数或请求头中。

注意事项

如果以上方法均无效,说明网站后端可能限制仅能下载最新版本固件,这种情况下无法通过控制台代码实现旧版固件下载,需寻找其他用户备份资源。

内容的提问来源于stack exchange,提问作者Michael Roach

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.01 15:18:26