/* eslint valid-jsdoc: "off" */ 'use strict'; /** * @param {Egg.EggAppInfo} appInfo app info */ module.exports = appInfo => { const config = exports = {}; // use for cookie sign key, should change to your own and keep security config.keys = appInfo.name + '_1560223608734_7978'; // post form请求 关闭csrf安全插件 config.security = { csrf: { enable: false, ignoreJSON: true, }, // domainWhiteList: [ 'http://www.baidu.com' ], // 配置白名单 }; // 配置上传 config.multipart = { fileSize: '50mb', mode: 'stream', fileExtensions: [ '.jpg', '.img', '.png', '.docx' ], // 扩展几种上传的文件格式 }; // add your middleware config here config.middleware = [ 'common', 'interceptor', 'xml2js' ]; config.interceptor = { ignore(ctx) { // 所有微信的接口 和 登录接口不需要带用户 const ignoreUrl = [ '/index', '/sys/login/in', '/wx/wxMessage', '/wx/getSign', '/wx/getOpenId', '/wx/getAppId', '/wxinfo/isExist', '/wxinfo/bing', '/wxinfo/visitIsExist', '/wxinfo/visitBing', '/wxinfo/visitUnbind', '/wxinfo/visitByFid', '/wxinfo/visitByNumber', '/visit/one', '/applet/isExist', '/applet/bing', '/applet/homeStatistics', '/welcomeMessage/list', '/banner/list', '/wx/getAppletOpenId', '/applet/appletVisitIsExist', '/applet/appletVisitBing', '/applet/appletVisitUnbind', ]; const url = ctx.request.url; for (const item of ignoreUrl) { if (url.indexOf(item) >= 0) { return true; } } return false; }, }; config.xml2js = { match(ctx) { const matchUrl = [ '/wx/wxMessage' ]; const url = ctx.request.url; for (const item of matchUrl) { if (url.indexOf(item) >= 0) { return true; } } return false; }, }; config.common = { match() { return true; }, }; config.wechat_config = { // 这边使用的是故事机的appId 后期无解 appId: 'wx22055631b887c2ab', appSecret: '328614e5d0d0b5f90c8480a6a9f81b00', getAccessToken: 'https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET', createMenu: 'https://api.weixin.qq.com/cgi-bin/menu/create?access_token=ACCESS_TOKEN', getUserInfo: 'https://api.weixin.qq.com/cgi-bin/user/info?access_token=ACCESS_TOKEN&openid=OPENID&lang=zh_CN', getJsApiTicket: 'https://api.weixin.qq.com/cgi-bin/ticket/getticket?access_token=ACCESS_TOKEN&type=jsapi', // 公众号获取openid oauthAccessToken: 'https://api.weixin.qq.com/sns/oauth2/access_token?appid=APPID&secret=SECRET&code=CODE&grant_type=authorization_code', // 小程序获取openid getAppletAccessToken: 'https://api.weixin.qq.com/sns/jscode2session?appid=APPID&secret=SECRET&js_code=CODE&grant_type=authorization_code', oauthUserinfo: 'https://api.weixin.qq.com/sns/userinfo?access_token=ACCESS_TOKEN&openid=OPENID&lang=zh_CN', }; // 加密 config.dump = { ignore: new Set([ 'pass', 'pwd', 'passd', 'passwd', 'password', 'keys', 'masterKey', 'accessKey', // ignore any key contains "secret" keyword /secret/i, 'wechat_config', 'userConfig', ]) }; // add your user config here const userConfig = { // myAppName: 'egg', cors: { origin: '*', // 注释掉就是上面的white生效 allowMethods: 'GET,HEAD,PUT,POST,DELETE,PATCH', }, mongoose: { // url: 'mongodb://127.0.0.1/info0303', // 本地 url: 'mongodb://infotest:infotest@172.17.222.95:27018/info_test', // url: 'mongodb://user_infoadmin:123456@39.105.97.139:27018/info_admin', // url: 'mongodb://infoadmin:infoadmin@39.105.97.139/info_admin', // 正式-info_admin表用户 options: { useUnifiedTopology: true, }, }, redis: { client: { port: 6379, // Redis port host: '39.105.97.139', // Redis host password: '', db: 0, }, }, sessionTimeOut: 86400, // 24H defaultPassword: '123456', defaultPageSize: 10, defaultUploadPath: '/strong/images/info_admin/', // defaultUploadPath: './app/public/uploads/', defaultWritePathPre: '/public/uploads/', // defaultUrl: 'https://info.windd.cn/collection', // defaultUrl: 'http://info.windd.cn:8080/test', defaultUrl: 'https://info.windd.cn/test', weiXinUrl: 'https://info.windd.cn/infoVue/#/visit/', defaultAdminId: '5d0070438217f92210e6f972', defaultAdminRoleId: '5d030a91ebd90c299489c121', defaultManagerRoleId: '5d036441464ced1f1840204a', defaultUserRoleId: '5d0c41046a0a730a44fe06b5', logger: { consoleLevel: 'DEBUG', // NONE allowDebugAtProd: true, // level: 'DEBUG', // NONE }, }; return { ...config, ...userConfig, }; };