当前位置: 首页 > news >正文

阿里巴巴的网站架构wordpress文章没办法显示略缩图

阿里巴巴的网站架构,wordpress文章没办法显示略缩图,网页链接成整体通过网站,微网站功能列表介绍 1.express 为不同 URL 路径中使用不同 HTTP 动词的请求#xff08;路由#xff09;编写处理程序。集成了“视图”渲染引擎#xff0c;以便通过将数据插入模板来生成响应。设置常见 web 应用设置#xff0c;比如用于连接的端口#xff0c;以及渲染响应模板的位置。在…介绍 1.express 为不同 URL 路径中使用不同 HTTP 动词的请求路由编写处理程序。集成了“视图”渲染引擎以便通过将数据插入模板来生成响应。设置常见 web 应用设置比如用于连接的端口以及渲染响应模板的位置。在请求处理管道的任何位置添加额外的请求处理“中间件”。 环境准备 1.安装node 2.安装mysql配置环境变量 3.安装vsCode的mysql插件 初始化项目 1.创建项目 npm init -y 2.安装依赖 npm i express mysql 3.安装配置热更新 npm i hotnode -g // 安装4.配置启动命令 start: hotnode index.js // package.json中配置启动命令接口实现 简单接口实现 const express require(express); const app express();// 请求拦截 会匹配所有请求 app.all(*, (req, res, next) {const login Math.random();if (login 0.5) return res.json(未登录);next(); });// get请求 app.get(/, (req, res) {res.send(Hello World); }); app.get(/liyfn, (req, res) {res.send(Hello liyfn); });// post app.post(/post, (req, res) {res.json({ name: liyfn }); });app.listen(3000, () {console.log(Server is running on port 3000); }); 参数解析 // 安装body-parser const bodyParser require(body-parser); app.use(bodyParser.json()); // json请求 app.use(bodyParser.urlencoded({ extended: false })); // 表单// 使用 body:请求体 query:查询参数 app.post(/post, (req, res) {console.log(req.query, req.params, req.body);res.json({ name: liyfn }); });跨域 // 解决跨域 const cors require(cors); app.use(cors());数据库连接 1.基础连接 // 创建连接对象 var connection mysql.createConnection(options); // 连接 connection.connect(function(err) { *** }); // 关闭 connection.end(function(err) { *** }); connection.destroy(); 2.连接池 // 连接mysql const mysql require(mysql); const db mysql.createPool({host: localhost,user: root,port: 3306,password: 123456,database: demo, });db.query(select * from userinfo, (err, data) {console.log(data); }); 3.区别 当连接不再需要时这些连接可以缓存在连接池中当接收到下一个客户端请求时从连接池中取出连接并重新利用而不需要再重新建立连接 项目应用 安装脚手架 yarn global add express express-generator创建项目 express --viewpug--version 打印版本号-e, --ejs 添加 ejs 引擎支持--pug 添加 pug 引擎支持--hbs 添加 handlebars 引擎支持-H, --hogan 添加 hogan.js 引擎支持-v, --view engine 添加 engine 视图引擎支持 (ejs|hbs|hjs|jade|pug|twig|vash) (默认为 jade)-c, --css engine 添加 engine 样式表引擎支持 (less|stylus|compass|sass) (默认为纯 css)--git 添加 .gitignore-f, --force 对非空文件夹强制执行-h, --help 打印帮助信息 配置打印日志 1.安装winston yarn add winston2.封装本地日志写入方法logger.js const { createLogger, format, transports } require(winston); const fs require(fs); const path require(path);const env process.env.NODE_ENV || development; const logDir log;// Create the log directory if it does not exist if (!fs.existsSync(logDir)) {fs.mkdirSync(logDir); }const filename path.join(logDir, results.log);const logger createLogger({// change level if in dev environment versus productionlevel: env production ? info : debug,format: format.combine(format.label({ label: path.basename(process.mainModule.filename) }),format.timestamp({ format: YYYY-MM-DD HH:mm:ss })),transports: [new transports.Console({format: format.combine(format.colorize(),format.printf((info) ${info.timestamp} ${info.level} [${info.label}]: ${info.message})),}),new transports.File({filename,format: format.combine(format.printf((info) ${info.timestamp} ${info.level} [${info.label}]: ${info.message})),}),], });module.exports logger; 3.改写原错误处理方式 const logger require(./logger); const errorHandler (err, req, res, next) {logger.error(${err.method} ${req.originalUrl} err.message);const errorMessage err.message;res.status(err.status || 500).json({code: -1,success: false,message: errorMessage,data: null,}); }; app.use(errorHandler);使用数据库 1.安装mysql插件 mysql 和 查询构建器knex yarn add mysql knex2.配置文件 module.exports {mysql: {host: 127.0.0.1,port: 3306,user: root,password: 123456,database: demo,},log: {error(msg) {console.log([knex error], msg);},}, };3.连接数据库 knex.js const config require(../config); const knex require(knex); // 建立连接 module.exports knex({client: mysql,connection: {...config.mysql,},log(msg) {console.log([knex error], msg);}, });4.封装基础增删改查方法base.js const knex require(./knex);// 增删改查 class Base {constructor(table) {this.table table;}// 查get() {return knex(this.table).select();}// 增insert(params) {return knex(this.table).insert(params);}// 改update(id, params) {return knex(this.table).where(id, , id).update(params);}// 删除del(id) {return knex(this.table).where(id, , id).del();} } module.exports Base;5.封装表模型 const Base require(./base);class Author extends Base {constructor(props author) {super(props);} }module.exports new Author(); 6.数据查询 const Author require(../models/author);// 获取数据 const getAuthor {showUser: async (req, res) {try {let data await Author.all();res.json({code: 200,message: 操作成功,data,});} catch (error) {res.json({code: 0,message: 获取失败,});}}, };module.exports getAuthor; 7.接口返回封装 var express require(express); var router express.Router();const authorController require(../controllers/author);/* GET users listing. */ router.get(/, authorController.showUser);module.exports router; knex使用 https://knexjs.org/guide/
http://www.hkea.cn/news/14269231/

相关文章:

  • 网站建设的组织机构网站上投放广告
  • 三桥网站建设免费网络加速器破解版
  • 有源码做网站百度搜索引擎官网入口
  • 快速建站教程网怎么修改网站上的内容
  • 学做网站的网站网站主办者和所有者区别
  • 集思吧网站怎么做问卷指数函数和对数函数
  • 专业的手机价格网站建设网站首页如何设计
  • 公司微网站建设价格百度手机下载安装
  • 简单网站html模板下载汕头网络科技有限公司
  • 网站建设技术主管自己做网站还有出路吗
  • 怎么建设微信网站佛山h5网站公司
  • 建设一网站有什么用win8风格网站开发实例
  • 用wordpress建站效果怎么样seo的培训课程
  • 服务型网站有哪些今晚赛事比分预测
  • 成都网站建设好多钱qq空间怎么发布wordpress
  • 简述电子商务网站建设的主要步骤宁波哪家做网站好
  • 政务公开 加强门户网站建设wordpress优化攻略
  • 南阳网站seo公司网站商城建设6
  • 微网站需要什么技术企业网站的seo
  • 站酷网页版做网站的域名多少钱
  • js源码下载从哪个网站能下载网页设计设计网站建设
  • 如何 套用模板做网站手机网站 如何 推广方案设计
  • 沈阳康平志诚建设集团网站网络服务商主要包括什么
  • 动态的网站大概多少钱wordpress 忘记管理员密码
  • wordpress更改用户名密码阿克苏网站建设优化
  • 网站没备案做淘宝客网站前端用什么语言
  • 晋江做任务的网站wordpress用户前端页面
  • 怎么查看网站的点击率静态网站被挂马
  • html手机网站开发网站设计的优点
  • 手机购物网站 设计西安建网站公司哪家好