逐步搭建vs2015的API自带认证调用+跨域调用

demo百度网盘链接:https://pan.baidu.com/s/1HJ19RJwS6qCixui8KF8QBg

提取码:yt1c

 

首先我们建立一个webapi项目,这个就不需要小编解释了。如下图,这是小编新建的weapi项目。

注意:关于中间件owin oath,2015已经自动安装并引用进入了,所以2015以下的需要手动引入,

具体不懂的可以去看官网。

由于原来的认证需要注册账号,所以我们重新定义验证方法,在项目里面找到【Providers】文件夹下的ApplicationOAuthProvider方法打开,

修改原来的方法GrantResourceOwnerCredentials,内部验证流程根据自己需求进行验证,我这里就不进行验证了。

然后修改一下访问路由,默认的路由可以访问正常方法,但是访问api的时候会报错,这是由于缺少一个参数,我们只有在原来的基础上加一个就行了,如图:

当然,跨域的方法我们上一博说过来,不了解的童鞋可以去看看。

好了,我们使用postman进行调用尝试

请求方式:post

请求路径:你自己的项目路径

Headers:(key:Content-Type,VALUE:application/x-www-form-urlencoded)

Body:grant_type=password&username=你的账号(前面没有验证这里随便写)&password=你的密码(前面没有验证这里随便写)

请求后如我们得到token,如下图:

接下来我们在api控制器里面写入一个测试调用方法,记住,如果是自己添加的空控制器,需要继承ApiController,并且方法需要添加[Authorize]属性,如下图:

到这里我们api就写好啦,是不是很简单,接下来我们写一个调用。

我们为了效果明显,可以重新新建一个web MVC项目,然后进行调用,如下图:

 

 我们使用ajax调用查看是否成功

很显然,我们调用成功了,正确获取到另一个项目里面的方法返回内容。

 

是不是很简单,这就是vs2015自带的认证,当然,和oath2.0认证有差别的,但是现在百度查的.net的oath2.0都比较大神,像我们这种小白看不懂,

关注小编,下次详解oath2.0逐步搭建实现过程!

 

posted @ 2019-01-07 14:44  熊泽-学习中的苦与乐  阅读(850)  评论(0编辑  收藏  举报