当前位置:首页 > PHP > 正文内容

laravel个推设置别名

陈杰11个月前 (09-24)PHP1783

上一篇文章我们说过了怎么用laravel接个推的官方sdk实现个推推送和厂商离线推送,因为我们要用到别名推送,而前端又用到的是unipush,在前端去绑定别名的难度肯定要大一点,所以就有一个思路就是,当用户登录的时候,前端获取到个推的clientId,然后通过接口让后端来帮忙实现绑定别名。


image.png

直接上代码吧


用到的是个推的官方sdk

composer  require  getuilaboratory/getui-pushapi-php-client-v2

加载一下吧。

public function unbind_push(Request $request)
{
   $config = ConfigModel::get_config();
   $api    = new \GTClient("https://restapi.getui.com", $config["push_appkey"], $config["push_appid"], $config["push_mastersecret"]);
   $params = new \GTCidAlias();
   $params->setCid($request->input("clientid"));
   $params->setAlias($request->get("uid"));
   $cidAliasListRequest = new \GTAliasRequest();
   $cidAliasListRequest->addDataList($params);
   $ret = $api->userApi()->unBindAlias($cidAliasListRequest);
   return self::returnMsg($ret);
}

public function bind_push(Request $request)
{
   $config = ConfigModel::get_config();
   $api    = new \GTClient("https://restapi.getui.com", $config["push_appkey"], $config["push_appid"], $config["push_mastersecret"]);
   $params = new \GTCidAlias();
   $params->setCid($request->input("clientid"));
   $params->setAlias($request->get("uid"));
   $cidAliasListRequest = new \GTAliasRequest();
   $cidAliasListRequest->addDataList($params);
   $ret = $api->userApi()->bindAlias($cidAliasListRequest);
   return self::returnMsg($ret);
}

要用到绑定别名相应的,当用户退出登录的时候也要用到解绑别名吧,所以两个方法,实际上前面都一样的,就是userApi中用到的一个是unBindAlias一个是bindAlias而已。

		// #ifdef APP-PLUS
		let client = plus.push.getClientInfo()
		this.post("/user/bind_push", client).then(res => {
		})
		// #endif

这个是前端uniapp的获取cilentId的方法

扫描二维码至手机访问

扫描二维码推送至手机访问。

版权声明:本文由何烦过虎溪发布,如需转载请注明出处。

转载请注明出处:http://95shouyou.com/?id=43

分享给朋友:

相关文章

laravel实现微信公众号授权登录实战

微信公众号授权登录实战框架:laravel依赖:overtrue/wechat首先安装一下easywechat依赖composer require overtrue/wechat:...

Laravel带条件查询多个count

Laravel带条件查询多个count

在一个数据表中,我们需要用到聚合函数count来查询符合条件的总数。举例一个场景:我们有一个帖子,这个帖子可以分别被好中差评,好中差评记录用一个单独的记录表来存储。如果用户点击好评,那么该帖子作者的经...

Laravel记录SQL操作日志的方法

Laravel记录SQL操作日志的方法

在laravel中我们有一个需求就是,涉及到sql操作的update,insert,delete操作的语句,我们都要写一个日志来记录一下说说方法吧。在项目目录app/Providers/AppServ...

Lumen框架报错Class session does not exist

Lumen框架报错Class session does not exist

由于lumen框架是为速度而生的 Laravel 框架,所以移除了session的支持,虽然在ide中代码提示可以敲出Session::put()方法出来,但是最终还是提示的是Class sessio...

laravel的Observer观察者模式模型事件实战

laravel的orm特别好用,特别是observer观察者模式,可以在不更改原有业务代码的情况下做到切入编程,有点类似于我们之前常用的钩子函数。下面就是我们深入observer观察者模式的实战代码现...

laravel跨库多态关联实战

laravel跨库多态关联实战

点赞记录表做了分库分表,位于副库里面表结构该点赞表关联了8个不同的表,因为业务原因,评论回复表有四个板块,所以做了4个评论记录表,4个回复记录表,且结构有细微不同。目标是用户获得被点赞记录,根据不同的...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。