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

laravel个推设置别名

陈杰2年前 (2021-09-24)PHP2955

上一篇文章我们说过了怎么用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集成极光推送实战

公司项目需要用到app推送消息通知,市面上很多推送渠道商,选来选去最终选定了极光推送,因为项目使用laravel写的,laravel自身又有模型事件,所以研究了一下,在不改动原有代码的情况下,给项目加...

Lumen框架报错Class session does not exist

Lumen框架报错Class session does not exist

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

lavel对接个推别名推送

lavel对接个推别名推送

新项目采用uniapp开发,需要用到推送功能,之前接过极光,其中的一些坑都踩过了,但是unipush用的是个推的推送,那就只有重写踩坑了。composer  require&nbs...

mysql查找附近的人,经纬度查询

经纬度排序mysql函数CREATE DEFINER=`root`@`localhost` FUNCTION `get_distance`(`lon1` float,`lat1` float,`lon...

通过代码创建多个同样的mysql表

在分库分表中可能要同时创建多个结构相同但后缀不同的表,通过代码实现for ($i = 3; $i <= 20; $i++) {    DB::connection('...

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

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

发表评论

访客

看不清,换一张

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