novel-downloader icon indicating copy to clipboard operation
novel-downloader copied to clipboard

[Bug]: 起点无法正常下载的解决方案

Open Confr1ngo opened this issue 1 year ago • 0 comments

必要条件

  • [X] 我已经搜索 issue 区,并确定没有相同问题存在。
  • [X] 我已经尝试将脚本升级至最新版本,但问题仍存在。
  • [X] 在尝试下载付费章节前,我已经购买了相应付费章节。

当我尝试复现issue时……

  • [ ] 我使用的浏览器是最新版 Chrome 或 Firefox
  • [X] 脚本管理器(Tampermonkey/Violentmonkey)是唯一浏览器插件
  • [X] 小说下载器脚本是唯一用户脚本

问题描述

当前版本脚本 5.1.825 中下载起点小说会出现如下报错:

TypeErrorCannot read property '_csrfToken' of undefinedTypeError: Cannot read property '_csrfToken' of undefined
    at Qidian.bookParse (chrome-extension://dhdgffkkebhmkfjojejmpbldmpobfkfo/userscript.html?name=%25E5%25B0%258F%25E8%25AF%25B4%25E4%25B8%258B%25E8%25BD%25BD%25E5%2599%25A8.user.js&id=45196826-288c-4ccd-990a-b71f814cf5b5:21367:14)
    at initBook (chrome-extension://dhdgffkkebhmkfjojejmpbldmpobfkfo/userscript.html?name=%25E5%25B0%258F%25E8%25AF%25B4%25E4%25B8%258B%25E8%25BD%25BD%25E5%2599%25A8.user.js&id=45196826-288c-4ccd-990a-b71f814cf5b5:14892:40)
    at Qidian.run (chrome-extension://dhdgffkkebhmkfjojejmpbldmpobfkfo/userscript.html?name=%25E5%25B0%258F%25E8%25AF%25B4%25E4%25B8%258B%25E8%25BD%25BD%25E5%2599%25A8.user.js&id=45196826-288c-4ccd-990a-b71f814cf5b5:14868:19)
    at async run (chrome-extension://dhdgffkkebhmkfjojejmpbldmpobfkfo/userscript.html?name=%25E5%25B0%258F%25E8%25AF%25B4%25E4%25B8%258B%25E8%25BD%25BD%25E5%2599%25A8.user.js&id=45196826-288c-4ccd-990a-b71f814cf5b5:28273:17)运行过程出错,请附上相关日志至支持地址进行反馈。

可以发现是 _csrfToken 未定义。 所以只需要将 15169-15170 行的

const _csrfToken = unsafeWindow.jQuery.ajaxSettings.data
            ._csrfToken;

改为

const _csrfToken = unsafeWindow.jQuery.ajaxSettings.data ? unsafeWindow.jQuery.ajaxSettings.data._csrfToken : null

即可。

如果作者有时间最好还是修一下这个 bug,否则对新人用户很劝退。(

问题发生的网址:

https://book.qidian.com/info/*/#Catalog

复现步骤

/

期待的行为

/

实际的行为

/

小说下载器脚本版本

5.1.825

脚本管理器(Tampermonkey/Violentmonkey)版本

Tampermonkey 4.18.1

浏览器名称及版本

Edge 91.0.864.54

Confr1ngo avatar May 09 '23 09:05 Confr1ngo