CI集成jwf Restfull源码
辛辛苦苦打的没有保存,懒得再打了。这篇文章是对
https://www.lovchun.com/posts/build-jwt-restfull-api-server-in-codeigniter-1.html
https://www.lovchun.com/posts/build-jwt-restfull-api-server-in-codeigniter-2.html
的改进和实际应用。
注意的点:
1、如果没有返回值,请查看文件的编码方式是否是utf-8
1、如果没有返回值,请查看文件的编码方式是否是utf-8
2、app\config\config.php $config[‘enable_hooks’] = true; //从false修改成true
3、app\config\autoload.php$autoload[‘config’] = array(‘jwt’,’rest’); //加载jwt 和 rest配置文件
$autoload[‘helper’] = array(‘authorization_helper’); //加载验证函数
4、如果是APACHE,则在.htaccess的
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
</IfModule>中添加:
# Handle Authorization Header
RewriteCond %{HTTP:Authorization} .
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
用法:
A、前端先使用 http://域名/auth/token 获取到token
POST方法,参数:username password ,
可以不提交参数,如果不提交参数,也会返回token,只是对于需要登录的方法,会提示请登录。
B、然后前端用获取的token,作为headers的Authorization的值。
访问 api 目录下的方法,都需要带这个token。
C、api下控制器的方法命名: 方法_动作[POST,GET,PUT,DELETE…等等]
比如 删除用户地址,userAddress_delete ,控制器访问则是: http://域名/api/控制器名/userAddress
只是前端的动作是DELETE
同理,新增用户地址 userAddress_post ,控制器访问则是: http://域名/api/控制器名/userAddress
前端动作是POST
修改用户地址是:userAddress_put …
效果图:
噢!评论已关闭。