This commit is contained in:
yulixing 2019-06-24 13:08:18 +08:00
parent 16d4cc09da
commit 1ae8dbef44
6 changed files with 54 additions and 106 deletions

View File

@ -11,7 +11,7 @@ import helmet from 'helmet';
import FileStreamRotator from 'file-stream-rotator'; import FileStreamRotator from 'file-stream-rotator';
import morgan from 'morgan'; import morgan from 'morgan';
import fs from 'fs'; import fs from 'fs';
import logger from './../utils/logger' import logger from './../utils/logger';
import expressUtils from './../utils/express-utils'; import expressUtils from './../utils/express-utils';
import config from './../../config/config'; import config from './../../config/config';
import connectMongo from 'connect-mongo'; import connectMongo from 'connect-mongo';
@ -96,6 +96,15 @@ app.get('/robots.txt', function(req, res) {
res.send('User-agent: *\nDisallow: /agent/'); res.send('User-agent: *\nDisallow: /agent/');
}); });
// TODO: 待删 字体测试用
app.use('/get_font', async (req, res, next) => {
const query = req.query;
const font_name = query.font_name;
const ext = query.ext;
res.download(`fonts/${font_name}.${ext}`);
});
// -- We don't want to serve sessions for static resources // -- We don't want to serve sessions for static resources
// -- Save database write on every resources // -- Save database write on every resources
app.use(compress()); app.use(compress());
@ -169,15 +178,15 @@ app.use(function(err, req, res, next) {
}); });
res.json({ errcode: 10, errmsg: err.message }); res.json({ errcode: 10, errmsg: err.message });
// if (req.path.startsWith('/api')) { // if (req.path.startsWith('/api')) {
// } else { // } else {
// TODO: // TODO:
// res.render('error', { // res.render('error', {
// message: err.status === 404 ? err.message : '服务器君开小差啦 @(・●・)@', // message: err.status === 404 ? err.message : '服务器君开小差啦 @(・●・)@',
// error: err, // error: err,
// title: err.status // title: err.status
// }); // });
// } // }
}); });

View File

@ -8,89 +8,10 @@ import config from '../../../config/config';
const router = new Router(); const router = new Router();
router.get('/test', async (req, res, next) => { router.post('/get_pic', async (req, res, next) => {
var dataBuffer = new Buffer(base64, 'base64'); const body = req.body;
// var imgBuffer = streamifier.createReadStream(dataBuffer); const opt = body.opt;
var imgpath = path.join(__dirname, '../../../temp/flower.jpg'); console.log(opt);
console.log(path.join(__dirname, '../../../temp/logo.png'));
var formData = {
'image-file': fs.createReadStream(imgpath),
// 'image-file': dataBuffer,
sub_path: '/mp-share/',
file_type: 'mp_share'
};
request.post(
{
url: 'http://localhost:2333/api/common/upload',
formData: formData,
headers: {
authorization:
'Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VybmFtZSI6Inl1bGl4aW5nIiwiaWF0IjoxNTYwOTIyOTEyLCJleHAiOjE1NjEwMDkzMTJ9.EAVRtbGxBIp4nDaWUAoO0IqGb6OSqDG5a_GXwbfjkBI'
}
},
function(err, res1, body) {
if (err) {
console.log(err);
res.send(err);
return;
}
fs.unlink(imgpath, function(error) {
if (error) {
console.log(error);
return false;
}
console.log('删除文件成功');
});
res.send(body);
}
);
});
router.get('/test1', async (req, res, next) => {
const opt = {
baseInfo: {
width: '250px',
height: '736px',
fonts: [
{
name: 'shoushuti',
path: 'fonts/shoushuti.ttf'
}
]
},
views: [
{
type: 'image',
url:
'https://client-1256832210.cos.ap-beijing.myqcloud.com/mp-share/5d09e26a62bb32868763dba3.jpeg',
style: {
top: '50px',
left: '20px',
width: '210px', //可选
height: '210px', // 可选
'border-radius': '105px', // 可选
border: '1px solid #fff' // 可选
}
},
{
type: 'text',
text:
'人间四月芳菲尽,山寺桃花始盛开。\n长恨春归无觅处不知转入此中来。\n——白居易·大林寺桃花',
style: {
left: '165px',
top: '300px',
color: '#fae',
'max-width': '693px',
'font-size': '24px',
'font-family': 'shoushuti',
'line-height': '50px',
'writing-mode': 'vertical-rl'
}
}
]
};
try { try {
const imgTempName = await painter(opt); const imgTempName = await painter(opt);
@ -103,7 +24,7 @@ router.get('/test1', async (req, res, next) => {
}; };
request.post( request.post(
{ {
url: config.host + '/api/common/upload', url: config.host + '/api/mp_share/imgs/upload',
formData: formData, formData: formData,
headers: { headers: {
authorization: `${req.headers.authorization}` authorization: `${req.headers.authorization}`

View File

@ -0,0 +1,14 @@
/* 小程序专用 */
import {Router} from 'express'
import uploadRouter from '../common/upload'
import shareRouter from '../games/mp_share';
const router = new Router()
router.use('/imgs', uploadRouter)
router.use('/imgs', shareRouter)
export default router

View File

@ -1,20 +1,24 @@
import { Router } from 'express'; import {Router} from 'express'
import permission from './../middleware/permission'; import permission from './../middleware/permission'
import commonRouter from './../controllers/common'; import commonRouter from './../controllers/common'
import sysRouter from './../controllers/sys'; import sysRouter from './../controllers/sys'
import userRouter from './../controllers/user'; import userRouter from './../controllers/user'
import gamesRouter from './../controllers/games'; import gamesRouter from './../controllers/games'
import mpShareRouter from './../controllers/mp_share'
const router = new Router(); const router = new Router()
// 公共接口 // 公共接口
router.use('/common', permission,commonRouter); router.use('/common', permission, commonRouter)
// 系统管理 // 系统管理
router.use('/sys', permission,sysRouter); router.use('/sys', permission, sysRouter)
// 用户相关 // 用户相关
router.use('/', userRouter); router.use('/', userRouter)
// 游戏列表 // 游戏列表
router.use('/games', permission, gamesRouter); router.use('/games', permission, gamesRouter)
export default router; // 小程序专用
router.use('/mp_share', mpShareRouter)
export default router

View File

@ -99,7 +99,7 @@ export default {
} }
}, },
db(req, type, subType, content, info) { db(req, type, subType, content, info) {
const user = req.user; const user = req.user || {};
const ip = req.headers['x-forwarded-for']; const ip = req.headers['x-forwarded-for'];
const path = req.baseUrl + req.path; const path = req.baseUrl + req.path;
const params = req.method === 'GET' ? req.query : req.body; const params = req.method === 'GET' ? req.query : req.body;

View File

@ -21,7 +21,7 @@ module.exports = async function paint(opt) {
if (fonts.length > 0) { if (fonts.length > 0) {
for (let i = 0; i < fonts.length; i++) { for (let i = 0; i < fonts.length; i++) {
const fontName = fonts[i].name; const fontName = fonts[i].name;
registerFont(fonts[i].path, { family: `${fontName}` }); registerFont(fonts[i].loc_path, { family: `${fontName}` });
} }
} }