如题,每次定时任务之后就不进行后续的操作了,无法进行定时任务的签到
修改一下xhr的封装
修改为如下就可以正常使用了
xhr(options, only = false)
{
const self = this
const DEBUG = trueconst log = (...args) => { if (DEBUG) console.log('[XHR]', ...args) } return new Promise((resolve, reject) => { const start = self.getTimestamp() try { GM_xmlhttpRequest({ ...options, timeout: 15000, ontimeout: () => { const cost = (self.getTimestamp() - start) / 1000 reject(new Error(`请求超时!用时 ${cost} 秒`)) }, onload: (xhr) => { const cost = (self.getTimestamp() - start) / 1000 if (xhr.status === 200) { resolve(only ? xhr.finalUrl : xhr.responseText) return } const redirectStatuses = [301, 302, 307, 308] if (redirectStatuses.includes(xhr.status)) { const match = xhr.responseHeaders?.match(/Location:\s*(.*?)\s*\r?\n/i) resolve(match ? match[1] : false) return } reject(new Error(`请求失败,用时 ${cost} 秒,状态码:${xhr.status}`)) }, onerror: (err) => { const cost = (self.getTimestamp() - start) / 1000 reject(new Error(`请求发生异常!用时 ${cost} 秒`)) }, }) } catch (e) { // 只能捕获 GM_xmlhttpRequest 同步异常 reject(e) } } )}
修改一下xhr的封装
修改为如下就可以正常使用了
xhr(options, only = false)
{
const self = this
const DEBUG = trueconst log = (...args) => { if (DEBUG) console.log('[XHR]', ...args) } return new Promise((resolve, reject) => { const start = self.getTimestamp() try { GM_xmlhttpRequest({ ...options, timeout: 15000, ontimeout: () => { const cost = (self.getTimestamp() - start) / 1000 reject(new Error(`请求超时!用时 ${cost} 秒`)) }, onload: (xhr) => { const cost = (self.getTimestamp() - start) / 1000 if (xhr.status === 200) { resolve(only ? xhr.finalUrl : xhr.responseText) return } const redirectStatuses = [301, 302, 307, 308] if (redirectStatuses.includes(xhr.status)) { const match = xhr.responseHeaders?.match(/Location:\s*(.*?)\s*\r?\n/i) resolve(match ? match[1] : false) return } reject(new Error(`请求失败,用时 ${cost} 秒,状态码:${xhr.status}`)) }, onerror: (err) => { const cost = (self.getTimestamp() - start) / 1000 reject(new Error(`请求发生异常!用时 ${cost} 秒`)) }, }) } catch (e) { // 只能捕获 GM_xmlhttpRequest 同步异常 reject(e) } } )}
2026-03-24 11:26:53 🟡Request Verification Token 获取失败!🔛<!DOCTYPE html><html lang="zh-Hans" dir="ltr"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/css/2dd2804736cf7caa.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-4769dcd9ed5f0d73.js"/><script src="/_next/static/chunks/41fda8fd-b00b0588152c3699.js" async=""></script><script
这个什么原因。。大佬
修改一下xhr的封装
修改为如下就可以正常使用了
xhr(options, only = false)
{
const self = this
const DEBUG = trueconst log = (...args) => { if (DEBUG) console.log('[XHR]', ...args) } return new Promise((resolve, reject) => { const start = self.getTimestamp() try { GM_xmlhttpRequest({ ...options, timeout: 15000, ontimeout: () => { const cost = (self.getTimestamp() - start) / 1000 reject(new Error(`请求超时!用时 ${cost} 秒`)) }, onload: (xhr) => { const cost = (self.getTimestamp() - start) / 1000 if (xhr.status === 200) { resolve(only ? xhr.finalUrl : xhr.responseText) return } const redirectStatuses = [301, 302, 307, 308] if (redirectStatuses.includes(xhr.status)) { const match = xhr.responseHeaders?.match(/Location:\s*(.*?)\s*\r?\n/i) resolve(match ? match[1] : false) return } reject(new Error(`请求失败,用时 ${cost} 秒,状态码:${xhr.status}`)) }, onerror: (err) => { const cost = (self.getTimestamp() - start) / 1000 reject(new Error(`请求发生异常!用时 ${cost} 秒`)) }, }) } catch (e) { // 只能捕获 GM_xmlhttpRequest 同步异常 reject(e) } } )}
专门注册个账号感谢大佬