注意:在发布之后,您可能需要清除浏览器缓存才能看到所作出的变更的影响。
- Firefox或Safari:按住Shift的同时单击刷新,或按Ctrl-F5或Ctrl-R(Mac为⌘-R)
- Google Chrome:按Ctrl-Shift-R(Mac为⌘-Shift-R)
- Internet Explorer或Edge:按住Ctrl的同时单击刷新,或按Ctrl-F5
- Opera:按 Ctrl-F5。
function unzip(b64Data) {
var strData = atob(b64Data);
strData = pako.ungzip(strData,{to: 'string'});
return decodeURIComponent(strData);
}
//检查是否为刷题云储存页面
function isRecordsPages(){
var url = window.location.href
url = url.split('Records/')
console.log(url)
if(url.length>1){
var id = url[1]
return id
}else{
return false
}
}
//获取某个页面的历史版本
function getPageRevision(url, title, pageCount){
var PARAMS = {
"action": "query",
"format": "json",
"prop": "revisions",
"titles": title,
"utf8": 1,
"rvprop": "content",
"rvlimit": pageCount,
"rvdir": "older",
}
var isSuccess = {}
$.ajax(
{
url: url,
method: "post",
async: false,
data: PARAMS,
timeout: 5000,
success: function (results){
if('-1' in results.query.pages){
console.log('===无此页面===')
isSuccess = {isSuccess:false, result:results}
}else {
isSuccess = {isSuccess:true, result:results}
}
}
})
return isSuccess
}
//解析json
function parseRecordsJSON(url,content){
var isSuccess = [false,0]
var PARAMS = {
"action": "parse",
"format": "json",
"text":content,
"contentmodel": "json",
"utf8": 1,
"origin":"*"
}
$.ajax({
async: false,
type: "post",
url: url,
data: PARAMS,
datatype: 'json',
success: function (datas) {
var data = datas['parse']['text']['*']
return data
}
});
}
//主函数
function unzipRecords(){
var id = isRecordsPages()
if(!id){
return '非题库云储存页面!'
}
var pages = getPageRevision('https://www.medforest.cn/medf/api.php','题库:Records/'+id,1)
pages = pages.result.query.pages
for(var key in pages){
var page = pages[key].revisions[0]['*']
}
var zippedContent = page
console.log(zippedContent)
var unzipped = unzip(zippedContent)
console.log(unzipped)
var parsed=parseRecordsJSON('https://www.medforest.cn/medf/api.php',unzipped)
$('#mw-content-text').html(parsed)
}
unzipRecords()