Laravel 如果开发小程序的 API 后端呢?

由于小程序是授权登陆,只有 code 和 sessionKey ,和 username , password 有区别。怎么实现 api 认证呢?

welcome come back
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
最佳答案

你的问题跟框架无关,和语言也没有关系。用户认证可以使用oauth2.0协议,小程序用的话,jwt就够用了。

其实身份认证的底层逻辑很简单,不要踩在空中楼阁上去写代码。

阮一峰的oauth2.0就类比的很不错。关于jwt,本论坛就有非常多的教程,请自行搜索。

4年前 评论
讨论数量: 7

你的问题跟框架无关,和语言也没有关系。用户认证可以使用oauth2.0协议,小程序用的话,jwt就够用了。

其实身份认证的底层逻辑很简单,不要踩在空中楼阁上去写代码。

阮一峰的oauth2.0就类比的很不错。关于jwt,本论坛就有非常多的教程,请自行搜索。

4年前 评论
Epona

通过code 和key 获取到openid, 然后根据openid获取到对应的user, 用jwt就可以了。

4年前 评论
hareluya

overtrue的easywechat欢迎你。。

4年前 评论
Hesunfly

如果是新手,可以看下社区出的教程,不过需要花钱购买,上面讲的很详细!如果不想花钱,网上有很多讲解的资料,可以动手试试。其实就是根据openid来区分用户啦,然后生成token,请求时携带就可以啦。

4年前 评论

首先你把 wx.login 获取的code 和 wx.getSetting 获取的结果合并到一起,发送给你的程序,你的程序验证 wx.login的code获取session_key,如果通过,那么wx.getSetting就是可信的,这时候执行登录,创建你自己的token返回给客户端,登录完成,如果没有这个用户,这时候你可以用wx.getSetting 的结果创建一个新用户,然后创建Token。剩下的就是框架原来的 API 流程了,用获取的Token 请求你自己的接口,该验证验证,该干嘛干嘛。

4年前 评论

可以参考一下我的项目 https://github.com/Hanson/laravel-admin-we...

src/Http/Controllers/Api/Mini/AuthController.php 为小程序相关的基础接口

4年前 评论

简单一点讲,就是小程序通过wx.login拿到code,然后小程序带上code通过接口请求后端,后端根据code去微信获取用户的openid 等数据,然后根据openid去数据库查询用户相关信息。再返回给小程序,切记不要给openid等敏感数据给小程序。

4年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!