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

网站优化哪里可以做爱有声小说网站捡个校花做老婆

网站优化哪里可以做,爱有声小说网站捡个校花做老婆,宁波网站建设公司地址,网站开发专业术语大全http 请求 实现get请求数据库数据#xff1b;实现添加数据实现编辑数据实现删除数据实现导出txt文件、Excel文件实现查询数据库数据并利用导出为excel文件 node 版本 16.16.0 node 版本 18.16.0 会连接 MongoDB 数据库错误。 Connected to MongoDB failed MongoServerSele…http 请求 实现get请求数据库数据实现添加数据实现编辑数据实现删除数据实现导出txt文件、Excel文件实现查询数据库数据并利用导出为excel文件 node 版本 16.16.0 node 版本 18.16.0 会连接 MongoDB 数据库错误。 Connected to MongoDB failed MongoServerSelectionError: connect ECONNREFUSED ::1:27017{name: http-node-demo,version: 1.0.0,description: ,main: index.js,scripts: {test: echo \Error: no test specified\ exit 1,start: node index.js},author: ,license: ISC,type: module,dependencies: {body-parser: ^1.20.2,mongodb: ^6.8.0,querystring: ^0.2.1} }项目安装 MongoDB 的 node 版本要跟启动时的 node 版本一致否则会报错 const timeoutError new error_1.MongoServerSelectionError(Server selection timed out after ${options.serverSelectionTimeoutMS} ms,this.description );node 链接 MongoDB // MongoDB连接配置 const mongoConfig {url: mongodb://localhost:27017,dbName: note, //数据库名称 };import { MongoClient } from mongodb; import { mongoConfig } from ./default.js; const mongoDB new MongoClient(mongoConfig.url);let db;async function mainFun() {// 创建MongoDB连接try {await mongoDB.connect();console.log(Connected to MongoDB successfully);db mongoDB.db(mongoConfig.dbName);} catch (err) {console.log(Connected to MongoDB failed, err);} }export { mainFun, db };接口返回的形势 返回 404 // 解析url const urlObj new URL(req.url, http://${req.headers.host});const params {}; const apiKey ${urlObj.pathname}${req.method.toLocaleLowerCase()}; const item ALL_PATH.find((v) /${v} apiKey);// 找不到路由返回404 Not Found if (!item) {res.writeHead(404, {Content-Type: text/plain; charsetutf-8,}).end(Not Found);return; }普通 JSON 字符串 import { db } from ../mongoDB/index.js; const getUser async () {try {// 查询数据集合user的所有数据并转为数组形式const collection await db.collection(user).find({}).toArray();let total 0;collection.estimatedDocumentCount(function (err, count) {if (err) throw err;total count;console.log(Estimated total number of documents: , count);// client.close();});return {code: 200,data: {list: collection,total: total || 0,},};} catch (err) {return {code: 500,data: {list: [],total: 0,},};} };返回文件流 import fs from fs; import path from path;const __dirname path.resolve();const downloadDocs async () {const promise new Promise((resolve, reject) {fs.readFile(__dirname /docs/新建文本文档.txt, (err, data) {if (err) {console.error(err);reject(error);return;}resolve(data);});});try {const resData await promise;return {code: 200,data: resData,contentType: text/plain; charsetutf-8,};} catch (err) {return {code: 500,data: ,contentType: text/plain; charsetutf-8,};} };const downloadNoteTemplate async () {try {const data fs.readFileSync(__dirname /docs/Note模板.xlsx);return {code: 200,data: data,contentType: application/vnd.ms-excel; charsetutf-8,};} catch (err) {return {code: 500,data: ,contentType: application/vnd.ms-excel; charsetutf-8,};} };resData {code: 200,data: Buffer 50 4b 03 04 0a 00 00 00 00 00 87 4e e2 40 00 00 00 00 00 00 00 00 00 00 00 00 09 00 00 00 64 6f 63 50 72 6f 70 73 2f 50 4b 03 04 14 00 00 00 08 00 87 ... 9951 more bytes,contentType: text/plain; charsetutf-8 }响应头 当标头已使用 response.setHeader() 设置时则它们将与任何传给 response.writeHead() 的标头合并其中传给 response.writeHead() 的标头优先。 语法 response.writeHead(statusCode[, statusMessage][, headers]) response.setHeader(Content-Type, text/html); response.setHeader(Set-Cookie, [typeninja, languagejavascript]);// Returns content-type text/plain const server http.createServer((req, res) {res.setHeader(Content-Type, text/html);res.setHeader(X-Foo, bar);res.writeHead(200, { Content-Type: text/plain });res.end(ok); });返回 xlsx 文件前端下载处理 后端接口 const downloadNoteTemplate async () {try {const data fs.readFileSync(__dirname /docs/Note模板.xlsx);return {code: 200,data: data,contentType: application/vnd.ms-excel; charsetutf-8,};} catch (err) {return {code: 500,data: ,contentType: application/vnd.ms-excel; charsetutf-8,};} };前端下载处理 Button onClick{() {request(/download/noteTemplate,{method: get,{/* */}responseType: blob,responseEncoding: utf8,options: {returnDirect: true, //returnDirect 直接返回接口所有信息},}).then((res) {console.log(res,res);downloadContentFileFun(测试.xlsx,res)}) }}下载/Buttonexport const downloadContentFileFun (filename, text) {// 下载Excel的文件 type: application/vnd.ms-excel需要与后端返回的content保持一致否则会出现无法打开的情况let blob new Blob([text], { type: application/vnd.ms-excel });const element document.createElement(a);const href URL.createObjectURL(blob);element.href href;element.setAttribute(download, filename);element.style.display none;element.click();//调用这个方法来让浏览器知道不用在内存中继续保留对这个文件的引用了。URL.revokeObjectURL(href);element.remove(); };返回 txt 文件前端下载处理 后端接口 const downloadDocs async () {const promise new Promise((resolve, reject) {fs.readFile(__dirname /docs/新建文本文档.txt, (err, data) {if (err) {console.error(err);reject(error);return;}resolve(data);});});try {const resData await promise;return {code: 200,data: resData,contentType: text/plain; charsetutf-8,};} catch (err) {return {code: 500,data: ,contentType: text/plain; charsetutf-8,};} };前端下载处理 ButtononClick{() {request(download/homeDoc, {method: get,responseType: blob,responseEncoding: utf8,options: {returnDirect: true, //returnDirect 直接返回接口所有信息},}).then((res) {console.log(res, res);downloadContentFileFun(测试.txt, res);});}} 下载 /Buttonexport const downloadContentFileFun (filename, text) {// 这里的类型type改成application/vnd.ms-excel发现也是可以正常打开的let blob new Blob([text], { type: text/plain; charsetutf-8 });const element document.createElement(a);const href URL.createObjectURL(blob);element.href href;element.setAttribute(download, filename);element.style.display none;element.click();//调用这个方法来让浏览器知道不用在内存中继续保留对这个文件的引用了。URL.revokeObjectURL(href);element.remove(); };关于前端下载文件的一些方法https://blog.csdn.net/weixin_40119412/article/details/126980329 node 利用 excelJS 导出文件 //exportExcel\excel.js // 导入 import ExcelJS from exceljs;export default () {// 创建工作薄const workbook new ExcelJS.Workbook();// 设置工作簿属性workbook.creator System;workbook.lastModifiedBy System;workbook.created new Date(2024, 7, 3);workbook.modified new Date();workbook.lastPrinted new Date(2024, 7, 3);// 将工作簿日期设置为 1904 年日期系统workbook.properties.date1904 true;// 在加载时强制工作簿计算属性workbook.calcProperties.fullCalcOnLoad true;workbook.views [{x: 0,y: 0,width: 1000,height: 2000,firstSheet: 0,activeTab: 1,visibility: visible,},];return workbook; };//exportExcel\index.js import workbookFun from ./excel.js;export default async (data, columns, sheetName sheet1) {const workbook workbookFun();// 添加工作表const sheet workbook.addWorksheet(sheetName);sheet.columns columns;// 将数据添加到工作表中sheet.addRows(data);// 后端 node返回接口直接使用buffer流const bufferData await workbook.xlsx.writeBuffer();// 浏览器可以利用Blob下载文件 node直接返回Blob会提示错误// const blob new Blob([bufferData], {// type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet// });return bufferData; };利用 exceljs 库和 buffer.Blob 返回数据出错 原因 不支持返回 Blob 格式的数据只支持字符串类型或 Buffer or Uint8Array (Use node --trace-warnings ... to show where the warning was created)ErrorCaptureStackTrace(err);^TypeError [ERR_INVALID_ARG_TYPE]: The chunk argument must be of type string or an instance of Buffer or Uint8Array. Received an instance of BlobMongoDB 操作 查看集合 show collections;返回信息 user_table role_table删除一个集合 db.user_table.drop();创建一个集合 db.createCollection(template_table)项目源码在gitee:https://gitee.com/yanhsama/node-http-demo window安装mongodb可以查看文章https://blog.csdn.net/weixin_40119412/article/details/130330496 mongodb的一些常用操作https://blog.csdn.net/weixin_40119412/article/details/130566375
http://www.hkea.cn/news/14266890/

相关文章:

  • 利用wordpress做api提供者电商网站产品设计优化技术主要是
  • 网站开发外包维护合同范本营销策划书怎么写格式
  • 网站开发页面静态化技术谷歌seo外贸推广
  • 如何做视频教程网站惠州seo外包平台
  • 镇江网站建设优化案例分析杭州设计公司装修
  • 在服务器上部署网站企业信息
  • 苏州建设网站平台WordPress海报封面主题
  • 网站建设 站内页面连接如何搭建一个自己的服务器
  • 阿里云网站地图是怎么做的wordpress友链插件
  • 百度投诉电话24小时巩义自助建站优化
  • 未成年人做网站多少钱能注册500万公司
  • 温州网站建设价格技术山西太原网络推广
  • 馆陶网站建设公司体育用品东莞网站建设
  • 做毕业设计免费网站建设用什么程序做资讯类网站
  • 百度数据网站贵阳市白云区官方网站
  • 网站服务器租用怎样收费西安wordpress
  • 河北省电力建设第一工程公司网站做网站需要学多久
  • 建站推广哪里有建站新闻资讯域名备案的网站建设方案书模板
  • 高端网站哪个比较好建设购物网站多少钱
  • wordpress如何建站呢wordpress邮件分析插件
  • 做网站开发教程社保门户网站建设方案
  • 房屋出租网站模板深圳市升华建设有限公司网站
  • 网站开发课程知识点总结泉州建站模板
  • 10g空间网站做视频网站网站的发展前景
  • 怎样做网站吸引人软件上传到那个网站做宣传
  • 自己做挖矿网站平面广告设计公司
  • 连云港做网站公司哪家好顺德网站建设原创
  • 2008 访问网站提示建设中更改wordpress主题语言包
  • 网站开发的pc或移动端山东省建设监理协会官方网站
  • 网站开发制作费用数码网站名