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

南阳网站seo卫生局网站建设方案

南阳网站seo,卫生局网站建设方案,淘客返利网站怎么做,金华东阳网站建设Node.js 编码规范 一、编码风格 1. 全局变量使用 直接使用 Node.js 内置的全局变量,无需通过 require 引入: // 不推荐 const { Buffer } require(buffer); const b Buffer.alloc(16);// 推荐 const b Buffer.alloc(16);适用于 Buffer、URL、URLSearc…

Node.js 编码规范

一、编码风格

1. 全局变量使用

直接使用 Node.js 内置的全局变量,无需通过 require 引入:

// 不推荐
const { Buffer } = require('buffer');
const b = Buffer.alloc(16);// 推荐
const b = Buffer.alloc(16);

适用于 Buffer、URL、URLSearchParams、TextEncoder、TextDecoder、process、console 等全局对象。

2. 优先使用 Promise API

推荐使用模块的 promises API 替代回调方式:

// 不推荐
const fs = require('fs');
fs.readFile(filePath, 'utf8', (error, content) => { ... });// 推荐
const { promises: fs } = require('fs');
async function readData(filePath) {const content = await fs.readFile(filePath, 'utf8');
}

3. 模块引用顺序

模块引用应遵循以下顺序:

  1. Node 内置模块
  2. npm 包
  3. 本地文件

同类引用按字典序排列,不同类别间空一行分隔:

// 推荐
const fs = require('fs');
const http = require('http');const { Bar, Foo } = require('tool');
const moment = require('moment');const Car = require('./models/car');

4. 异常处理规范

必须使用原生 Error 对象抛出异常:

// 不推荐
throw 'error';
throw 0;// 推荐
throw new Error('error');
const err = new Error('error');
throw err;

5. 避免同步方法

线上环境应避免使用同步方法:

// 不推荐
fs.readFileSync('./somefile', 'utf-8');// 推荐
const { promises: fs } = require('fs');
async function test() {await fs.readFile('./somefile', 'utf-8');
}

二、安全规范

  1. 隐藏错误详情:客户端错误提示不得包含敏感系统信息
  2. 隐藏技术栈标识:移除或伪造 X-Powered-By 响应头
  3. JSONP 安全:跨域接口需严格校验访问来源,配置域名白名单
  4. 用户标识安全:禁止使用参数或明文 cookie 中的用户标识查询敏感信息
  5. 防止 SQL 注入:使用预编译语句,对用户输入进行转义和过滤
  6. 依赖管理:定期检查并更新存在漏洞或过期的依赖
  7. 文件上传安全:用户上传文件应存储至 OSS 等专业服务
  8. URL 重定向安全:服务端重定向需设置白名单验证
  9. 接口入参校验:使用 jsonschema 或 joi 严格校验请求参数

三、最佳实践

  1. 无状态设计:应用应保持无状态,使用外部存储管理数据
  2. 静态文件托管:推荐使用 CDN 而非 Node.js 托管前端静态文件
  3. CPU 密集型任务:将 CPU 密集型任务委托给反向代理(如 nginx)
  4. 异步编程:优先使用 async/await 替代回调函数
  5. 回调函数处理:使用 util.promisify 将回调转为 Promise:
const util = require('util');
const fs = require('fs');
const stat = util.promisify(fs.stat);
  1. Promise 使用:优先使用原生 Promise 而非第三方库
  2. 链式调用:类方法返回 this 实现链式调用:
class Jedi {jump() {this.jumping = true;return this;}setHeight(height) {this.height = height;return this;}
}

本规范基于 eslint-config-egg 扩展,旨在提升 Node.js 业务开发的代码一致性、安全性和可维护性。

http://www.dtcms.com/a/460137.html

相关文章:

  • 怎么做网站移动端东莞seo快速排名
  • 网站建设源代码 费用厦门网页设计公司价格
  • 南昌网站建设公司排行榜前十网站运营和推广
  • 大型网站开发像天猫类的娄底建网站
  • 长安镇仿做网站如何设计一个网页系统
  • 制作企业网站的代码网站服务器做哪些安全措施
  • 网站 不 备案semiconductor是什么意思
  • 山西两学一做网站网站开发实训要求
  • 旅游网站制作视频百度云怎么做电影引流网站
  • 公司电商网站建设新渝网门户网
  • 九江建网站多少钱都江堰市网站建设
  • 网站首页代码在哪里正常网站 月均ip pv
  • 郑州给公司做网站的公司手机优化大师官方免费下载
  • 如何制作自己的网站百度搜不到网站
  • 网站建设包括啥长沙铭万做网站
  • 做网站找我网站建设需要学ps吗
  • 网站开发公司云鲸互创怎么联系网站开发工程师
  • 建站源码下载wordpress排行小工具
  • C 建设个人网站仿《快乐麻花》网站源码
  • 购物网站管理系统中标信息查询
  • 大连做网站哪家公司好软件开发岗位介绍
  • 吉林网站开发公司网站做地图地址
  • 做网站公外贸公司属于什么企业
  • 网站建设 意见征集如何做互联网营销
  • 西安做网站 送百度首页2019做什么类型网站
  • seo优化网站网页教学包装设计的意义
  • 做网站用什么语言数据库专门做招商的网站是什么意思
  • 网站统计排名东莞市官网网站建设平台
  • 用php做网站难吗centos怎么安装wordpress
  • 国外网站设计 网址启东网站建设公司