zoukankan      html  css  js  c++  java
  • 基于TypeScript的NodeJs框架:NestJs开发博客API (node.js+nest.js)

    一、NestJs开发博客API-1-基础项目搭建

    1.1 安装

    npm i -g @nestjs/cli
    
    nest new project-name

    二、 NestJs开发博客API-2-创建帖子模块和控制器

    nest g mo posts    // module
    nest g co posts    // Controller

    三、使用Swagger自动生成接口文档

    3.1、 安装

    npm install --save @nestjs/swagger swagger-ui-express

    3.2、 核心代码

    打开main.js,添加以下代码

    import { SwaggetModule, DocumentBuilder } from '@nestjs/swagger';
    
    
    const options = new DocumentBuilder()
        .setTitle('nestjs博客API')
        .setDescription('我的第一个NestJs项目')
        .setVersion('1.0')
        .build();
      const document = SwaggerModule.createDocument(app, options);
      SwaggerModule.setup('api-docs', app, document);

     

    注:

    @ApiUseTags()  改成了  @ApiTags('默认')

    @ApiOperation({ title: 'test' })  改成了  @ApiOperation({ summary: 'test' })

      

    四、NestJs开发博客API-4-Post请求和数据传输对象DTO

    五、NestJs开发博客API-5-Put、Delete请求和URL路径参数

    六、NestJs开发博客API-6-Typegoose模型定义

    npm install @typegoose/typegoose mongoose @types/mongoose --save-dev
    @types/mongoose  ts提示
    @hasezoey/typegoose@nest 已经被抛弃

    新建post.model.ts

    mongoose.connect('mongodb://localhost:/nest-blog-api',{
        useNewUrlParser: true,
        useFindAndModify: false,
        useCreateIndex: true
      })

    写完以上代码后,启动程序出现问题: 目标计算机积极拒绝,无法连接

    安装步骤如下,检查发现缺少3,4步

    1.在Mongodb官网下载对应的版本,下载地址https://www.mongodb.org/downloads

    2.双击安装到硬盘下,路径自定义,可默认

    3.通过cmd命令mkdir data在解压的mongodb下创建data文件夹(或者直接在Windows管理下创建也可以)

    4.在data文件夹下创建db和log文件夹,db用来存储数据,log记录日志

    程序启动方式:

    1.启动Mongod服务,在D:mongodbin下直接双击打开Mongod也可以,在cmd下启动也可以。

    2.启动Mongo

    将Mongod作为Windows服务启动。

    按上面步骤安装完成后:

    1、ctrl+r进入cmd窗口

    2、cd 进入安装根目录下面的bin目录下,例子:d:->cd MongoDb/bin(这是我安装的路径)

    3、输入命令:D:MongoDbin>mongod --dbpath "D:MongoDbdatadb" --logpath "D:MongoDbdatal
    ogMongoDB.log" --install --serviceName "MongoDB" 注意:命令里面包含的路径是实际安装的路径,应对照实际更改

    注意:D:MongoDbin>mongod --dbpath "D:MongoDbdatadb" --logpath "D:MongoDbdatal
    ogMongoDB.log" --remove--serviceName "MongoDB"  此命令为删除,区别于install,remove

    4、开启服务:net start MongoDB (net stop MongoDB为关闭服务命令)

    5、命令mongo启动mongodb程序即可

    说明:W3C上有一段安装的说明,下面是作为Windows服务时的一些参数

    八、使用class-validator验证请求数据

    yarn add class-validator class-transformer

    yarn add nestjs-typegoose

    更新最新的依赖包

    yarn upgrade-interactive --latest

  • 相关阅读:
    aptana中删除空行
    css预处理的引入与问题
    rsyslog 服务器重启后 发现不能接受到外部日志 只能接受本地日志 关闭防火墙即可
    php访问其他网站接口
    mysql 表查询结果 总行数计算
    linux centos 恢复 还原 备份 Snapper 快照说明
    linux 服务 启动 关闭 列表
    linux yum 安装 卸载
    php7 mysql_pconnect() 缺失 解决方法
    搭建一个免费的,无限流量的Blog----github Pages和Jekyll入门
  • 原文地址:https://www.cnblogs.com/zhoudawei/p/12840157.html
Copyright © 2011-2022 走看看