netCore3.0+webapi到前端vue(后端)

 

第一步创建api项目

 

 

创建完成启动F5!!

如图

 

数据库我用的是mysql 用ef操作数据 

开发环境:Win10 + VS2019
Mysql服务器版本:8.0.16

 

1.下载并安装插件(必备)

MySQL-Connector-net-6.9.12
MySQL for Visual Studio 2.0.5

用Nuget方式安装MySql.Data.Entity-6.9.12(MySql.Data.EntityFrameworkCore.Design!!两种都试过没问题,前面一种会报提示不兼容),MySql.Data-6.9.12    MySql.Data.EntityFrameworkCore
注意!!! 安装的2个dll版本号必须一致以及对应MySQL-Connector-net版本相同

 

2.在项目根目录新建Models文件

创建实体类 gj

public class gj
    {
        // <summary>
        /// 主键
        /// </summary>
        public int id { get; set; }

        /// <summary>
        /// 标题
        /// </summary>
        public string method { get; set; }
        /// <summary>
        /// 内容
        /// </summary>
        public string text { get; set; }
        /// <summary>
        /// 状态 1正常 0删除
        /// </summary>
        public string type { get; set; }
    }
   public class DbModel:DbContext
    {
         public DbSet<gj> gj { set; get; }

        //protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
        //    => optionsBuilder.UseMySQL(@"Server=localhost;database=testapp;uid=root;pwd=woshishui");
        public DbModel(DbContextOptions<DbModel> options) : base(options)
        {

        }
    }

 

appsettings.json 配置数据连接

{
  "ConnectionStrings": {
    "DefaultConnection": "Server=xxxx;database=testapp;uid=root;pwd=xxxx;"
  },
  "Logging": {
    "LogLevel": {
      "Default": "Information",
      "Microsoft": "Warning",
      "Microsoft.Hosting.Lifetime": "Information"
    }
  },
  "AllowedHosts": "*"
}

 

Startup.cs

 public void ConfigureServices(IServiceCollection services)
        {
            //连接 mysql 数据库,添加数据库上下文
            services.AddDbContext<DbModel>(options =>
                options.UseMySQL(Configuration.GetConnectionString("DefaultConnection")));

            services.AddControllers();
          
        }

 

Controllers 下的ValuesController.cs

修改代码如下

 private readonly DbModel _coreDbContext;

        public ValuesController(DbModel coreDbContext)
        {
            _coreDbContext = coreDbContext;
        }

        // GET api/values
        [HttpGet]   
        public List<gj> Get()
        {
            return _coreDbContext.Set<gj>().ToList();
          
        }

 

3.完成配置运行项目

测试如下

 

至此就完成了后端api项目

 前端配置链接 https://www.cnblogs.com/ouyangkai/p/11504928.html

转载于:https://www.cnblogs.com/ouyangkai/p/11504279.html

Netcore6.0是微软推出的全新版本的开发框架,它提供了强大且灵活的功能,用于构建Web应用程序和APIWeb API是Netcore6.0中的一项重要功能,它允许我们构建基于HTTP协议的API,并通过JSON格式进行数据交换。 JWT(JSON Web Token)是一种用于在网络应用间传递信息的安全方法。在Netcore6.0中,我们可以使用JWT来实现Web API的授权功能。JWT由三部分组成:头部、载荷和签名。头部包含了令牌的类型和算法,载荷包含了我们想要传递的数据,签名通过使用密钥进行加密来验证令牌的合法性。 在Netcore6.0中,我们可以使用Microsoft提供的Microsoft.AspNetCore.Authentication.JwtBearer包来简单地实现JWT的授权功能。首先,我们需要在Startup.cs文件的ConfigureServices方法中配置JWT的身份验证服务,并指定密钥、颁发者、验证等参数。然后,在Configure方法中启用身份验证中间件和JWT授权中间件。 在Vue3中,我们可以使用Axios库来发送HTTP请求并附带JWT令牌进行授权。Vue3是一种流行的JavaScript框架,用于构建现代化的用户界面。通过Axios,我们可以将JWT令牌添加到请求的Authorization头部中,并在后端接收到请求时进行验证。 为了实现Vue3与Netcore6.0的JWT授权,我们首先需要在Vue3项目中安装Axios库,并配置请求拦截器,在每个请求发送前将JWT令牌添加到请求头中。后端接收到带有JWT令牌的请求后,使用相同的密钥和算法进行解密并验证令牌的合法性。 综上所述,Netcore6.0的Web APIVue3的JWT授权组合,可以实现安全可靠的API授权。通过合理的配置和使用,我们可以保护API免受未经授权的访问,并确保只有经过身份验证的用户才能访问敏感数据或执行特定操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值