@@ -4,62 +4,11 @@ const glob = require('glob')
44const { marked} = require ( 'marked' )
55const MagicString = require ( 'magic-string' )
66const md5 = require ( 'md5' )
7- const axios = require ( 'axios' )
8- const FormData = require ( 'form-data' ) ;
97const cliProgress = require ( 'cli-progress' ) ;
10-
11- const config = require ( '../config' )
8+ const { uploadImage } = require ( './upload' )
129
1310const bar = new cliProgress . SingleBar ( { } , cliProgress . Presets . shades_classic ) ;
1411
15- let accessToken = ''
16- const getAccessToken = async ( ) => {
17- if ( accessToken ) return accessToken
18-
19- const { data } = await axios . get ( 'https://api.weixin.qq.com/cgi-bin/token' , {
20- params : {
21- grant_type : 'client_credential' ,
22- appid : config . appid ,
23- secret : config . secret
24- }
25- } )
26- if ( data . access_token ) {
27- accessToken = data . access_token
28- return accessToken
29- }
30- throw new TypeError ( data )
31- }
32-
33-
34- const uploadImage = async ( filePath ) => {
35- const cloudPath = 'cookbook'
36- const token = await getAccessToken ( )
37- const url = 'https://api.weixin.qq.com/tcb/uploadfile?access_token=' + token
38- const { data } = await axios . post ( url , {
39- env : config . cloudEnvId ,
40- path : cloudPath
41- } )
42- if ( data . errcode == 0 ) {
43- const { url, token, authorization, file_id, cos_file_id} = data ;
44- const form = new FormData ( )
45-
46- form . append ( 'key' , authorization ) ;
47- form . append ( 'Signature' , authorization ) ;
48- form . append ( 'x-cos-security-token' , token ) ;
49- form . append ( 'x-cos-meta-fileid' , cos_file_id ) ;
50- form . append ( 'file' , fs . createReadStream ( filePath ) ) ;
51-
52- return new Promise ( ( resolve , reject ) => {
53- form . submit ( url , ( err ) => {
54- if ( err ) reject ( err )
55- resolve ( file_id . replace ( cloudPath , '' ) + authorization )
56- } )
57- } )
58- } else {
59- throw new TypeError ( data . errmsg )
60- }
61- }
62-
6312glob ( path . resolve ( __dirname , '../HowToCook/dishes/**/*.md' ) , { } , async ( err , files ) => {
6413 if ( err ) {
6514 console . log ( err )
@@ -185,5 +134,5 @@ glob(path.resolve(__dirname, '../HowToCook/dishes/**/*.md'), {}, async (err, fil
185134
186135 s . prepend ( 'export default ' )
187136 fs . writeFileSync ( './miniprogram/data.js' , s . toString ( ) )
188- fs . writeFileSync ( './miniprogram/ data.json' , jsonData . toString ( ) )
137+ fs . writeFileSync ( './data-v2 .json' , jsonData . toString ( ) )
189138} )
0 commit comments