AntDesignPro+NetCore使用----用户登录

不知道为啥为非要用NetCore做为后端API开发语言,前端用使用Ant Design Pro。

先解决从mock到真实服务器的问题。

1,用户登录

 在Ant Design Pro的 ".roadhogrc.mock.js" 文件中,把最后一行的export default注释掉,如下:

// export default (noProxy ? {} : delay(proxy, 1000));

然后添加:

export default {
'GET /api/(.*)' : 'http://localhost:27153/api/',
'POST /api/(.*)' : 'http://localhost:27153/api/',
};


这个地址是.net core开发的接口,还没正式部署,这只是个测试地址。

然后在 .net core api项目中创建一个controller,再创建一个方法,定义它的访问方式是 "POST", 再定义下路由 "[Route("~/api/login/account")]"  , 这地址个跟Ant Design Pro的一样。注意该方法的参数要用[FromBody]标明,因为前端 传过来的是json格式的数据,c#帮你解析了。 参数类型这里使用 dynamic param,为什么要这样呢,因为懒,不想定义类,也不想挨个列出来,就用动态的好了。

示例如下:

        [HttpPost]
        [Route("~/api/login/account")]
        public IActionResult Login([FromBody] dynamic param)
        {
            JObject ret = new JObject();

            string userName = param.userName;
            string password = param.password;
            string type = param.type;

            if (userName == "admin" && password == "888888")
            {
                ret.Add(new JProperty("status", "ok"));
                ret.Add(new JProperty("type", type));
                ret.Add(new JProperty("currentAuthority", "admin"));
            }
            if (userName == "user" && password == "123456")
            {
                ret.Add(new JProperty("status", "ok"));
                ret.Add(new JProperty("type", type));
                ret.Add(new JProperty("currentAuthority", "user"));
            }

            return Json(ret);
        }


然后把 ".roadhogrc.mock.js" 中 有关 

'POST /api/login/account'

的这一段注释掉.

.net core api 项目中登录方法的内容可以参考这一段来写。保持返回内容与mock一致。


修改完这些,重启 Ant Design Pro 和 .NetCore API,到登录页面尝试登录,这时应该跟使用mock时的行为一致了。


-完-












你可能感兴趣的:(前端,Ant,Design,Pro,C#)