希望这次修好了。。。
如你所见,leancloud要限制白嫖用户定时任务,使其不能用于自动唤醒。。。这就使我的自动提醒功能失效了。。。
但是,作为一个白嫖党,我是绝对不会升级标准版实例的(一天1.06USD。。。)所以,为解决这个问题,我只能借助搜索引擎。。。
好在已经有人提出了解决方案
其原理为北京时间8点到晚上23点只要有人访问博客就会触发js发ajax请求唤醒云引擎。由于云引擎睡眠的时候发请求不一定会成功(但是有请求就会醒)所有没有做请求失败处理。请求发送后设置cookie避免20分钟内刷新等操作重复发请求。
使用方法
把以下js代码放在valine的初始化代码后面,没必要放body里,记得把云引擎地址改成自己的。valine-admin配置里的ADMIN_URL就是云引擎地址。
var engine = document.cookie.replace(/(?:(?:^|.*;\s*)engine\s*\=\s*([^;]*).*$)|^.*$/, "$1") || '0';
if(engine!='1') {
fetch('https://quan.suning.com/getSysTime.do')
.then(function(response) {
return response.json();
})
.then(function(date) {
var hours = new Date(date.sysTime2).getHours();
if(hours>7 && hours<23){
fetch('https://你云引擎的地址');
var exp = new Date(date.sysTime2);
exp.setTime(exp.getTime() + 20*60*1000);
document.cookie = "engine=1;path=/;expires="+ exp.toGMTString();
}
})
}
文章作者 QQ Floating Ice
许可协议 CC BY-NC-SA 4.0