1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99
|
Page({ data: {}, onShow () { }, handleScanCode({ detail }) {
const { result } = detail;
if (result.indexOf('https://wxaurl.cn') !== 0 && result.indexOf('https://wxmpurl.cn/') !== 0) { return wx.showToast({ title: '无法处理[' + result + ']', icon: 'none', }); }
return wx.request({ url: result, success: (response) => { if (response.statusCode !== 200) { return wx.showToast({ title: '读取失败[HTTP ' + response.statusCode + ']', icon: 'none', }); }
const html = response.data;
const index = html.indexOf('window.data = {');
var data = html.substr(index + 'window.data = '.length, html.indexOf('}', index) - index - 'window.data = '.length + 1);
data = data.replace(/(\s*?{\s*?|\s*?,\s*?)(['"])?([a-zA-Z0-_9]+)(['"])?:/g, '$1"$3":'); data = data.replace(/'/g, '"'); data = data.replace(/query(.*),/g, 'query$1'); data = JSON.parse(data);
if(data.query.indexOf('=') !== -1) { const query = {}; const query_tmp = data.query.split('&');
for(let i in query_tmp) { let query_item = query_tmp[i].split('='); query[query_item[0]] = query_item[1]; }
data.query = query; }
console.log('data', data); }, }) }, });
|