我是一个 Laravel 小白,我是一个 Laravel 小白,我是一个 Laravel 小白(默念三遍再往下读,如果非小白就不用看了)。

Laravel 使用 Composer 来管理代码依赖。所以,在使用 Laravel 之前,请先确认你的电脑上安装了 Composer。

这说明没有安装 Composer 就无法安装使用 Laravel。

安装 Laravel

1.使用 Composer 下载 Laravel 安装包:

$ composer global require "laravel/installer"

2.这时候会发现命令行找不到 laravel 命令

那是因为 laravel 命令不在 PATH 路径下面,所以还需要将 ~/.composer/vendor/bin 路径加入到 PATH。

(这个路径是 Laravel 中文文档中说的,但我本机不同,我本机是 ~/.config/composer/vendor/bin

然后就找到了。

到这里 Laravel 已经安装成功。

3.创建一个新的 Laravel 项目:

$ laravel new jpush-demo

这个时候出了一些小故障,那是因为没有注意到,文档前面的几句话

如果你没有使用 Homestead ,你需要确保你的服务器上安装了下面的几个拓展:

PHP >= 5.6.4
OpenSSL PHP Extension
PDO PHP Extension
Mbstring PHP Extension
Tokenizer PHP Extension
XML PHP Extension

是的,这些 PHP 拓展需要全部安装。(但我缺少的是 php-zip ,当然这不重要,缺什么安什么就行了)

OK, Let's build something amazing !

集成 JPush PHP Api Cient

看文档安装

Done!

配置

新建 config/jpush.php 文件

<?php
return [
'appKey' =>env('JPUSH_APP_KEY'),
'masterSecret' =>env('JPUSH_MASTER_SECRET')
]

不了解 env 是几个意思?可以看看这个先 http://d.laravel-china.org/docs/5.4/configuration

测试

然后就遇到了第一个问题

即是 artisan 命令执行超时,解决这个问题之后开始测试(如果有人遇到并且无法解决,可以在评论区和我交流)

1 先生成一个控制器

$ php artisan make:controller JPushController --resource

2 编辑 JPush 控制器的 index 方法

# app/Http/Controllers/JPushController.php
use JPush\Client as JPushClient; public function index() {
$jpush = new JPushClient(config('jpush.appKey'), config('jpush.masterSecret'));
$response = $jpush->push()
->setPlatform('all')
->addAllAudience()
->setNotificationAlert('hello tp3.2')
->send();
print_r($response);
}

3 添加相应的路由

# routes/web.php
Route::get('jpush', 'JPushController@index');

4 启动 Laravel 自带的服务器

$ php artisan serve

4 测试

终端下:

浏览器中:

注意: 这个是测试,所以各种逻辑全部写在了 Controller 当中, 当然了,对于小型项目来讲并没有什么问题,但是工程量一大问题就出现了。


由于本人水平有限,此文难免出现一些错误或者不准确或者表达不好的地方,如有任何不对,恳请批评指正。

作者:Helperhaps - 极光开发者

原文:Laravel 集成 JPush 极光推送指北

知乎专栏:极光日报

Laravel 集成 JPush 极光推送指北的更多相关文章

  1. ThinkPHP 3.2.x 集成极光推送指北

    3.2版本已经过了维护生命周期,官方已经不再维护,请及时更新至5.0版本 -- ThinkPHP 官方仓库 以上,如果有条件,请关闭这个页面,然后升级至 ThinkPHP 5,如果由于各种各样的原因无 ...

  2. AndroidStudio离线打包MUI集成JPush极光推送并在java后端管理推送

    1.AndroidStudio离线打包MUI 如何离线打包请参看上篇随笔<AndroidStudio离线打包MUI> 2.集成极光推送 官方文档:https://docs.jiguang. ...

  3. Springboot项目集成JPush极光推送(Java SDK)

    1.由于项目的需求,需要在Android APP上实现消息推送功能,所以引用了极光推送(官网:https://www.jiguang.cn/, 文档:http://docs.jiguang.cn/) ...

  4. Android集成JPush极光推送

    推送原理 参考网址:https://blog.csdn.net/huangli1466384630/article/details/79889473 SDK下载 https://docs.jiguan ...

  5. atitit.web 推送实现方案集合(2)---百度云,jpush 极光推送 ,个推的选型比较.o99

    atitit.web 推送实现方案集合(2)---百度云,jpush 极光推送 ,个推的选型比较.o99 1.1. 云推送有推送次数或频率的限制吗? 1 1.2. 推送的消息长度 1 1.3. 离线消 ...

  6. 使用JPush(极光推送)实现远程通知

    使用JPush(极光推送)实现远程通知 远程推送是APP 必备的功能, 现在第三方的 SDK 已经做的非常完备了, 在 iOS10.0出来之后, 极光推送也及时更新了他的 SDK, 今天小试了一下效果 ...

  7. Android开发之第三方推送JPush极光推送知识点详解 学会集成第三方SDK推送

    作者:程序员小冰,CSDN博客:http://blog.csdn.net/qq_21376985 下面是一些知识点介绍,后期将会带领大家进行代码实战: 一.Android实现推送方式解决方案: 1.推 ...

  8. 用JPUSH极光推送实现服务端向安装了APP应用的手机推送消息(C#服务端接口)

    这次公司要我们做一个功能,就是当用户成功注册以后,他登录以后要收到消息,当然这个消息是安装了我们的手机APP应用的手机咯. 极光推送的网站的网址是:https://www.jpush.cn/ 极光推送 ...

  9. Android消息推送——JPush极光推送

    刚看了一篇关于Android消息推送评测总结的博客http://www.cnblogs.com/logan/p/4514635.html: 自己也对原学过的JPush极光进行一下小结,方便后续工作使用 ...

随机推荐

  1. 【CF#303D】Rotatable Number

    [题目描述] Bike是一位机智的少年,非常喜欢数学.他受到142857的启发,发明了一种叫做“循环数”的数. 如你所见,142857是一个神奇的数字,因为它的所有循环排列能由它乘以1,2,...,6 ...

  2. Linux下各种解压命令

    本文介绍了linux下的压缩程式tar.gzip.gunzip.bzip2.bunzip2.compress .uncompress. zip. unzip.rar.unrar等程式,以及如何使用它们 ...

  3. 基于Mybatis分页插件PageHelper

    基于Mybatis分页插件PageHelper 1.分页插件使用 1.POM依赖 PageHelper的依赖如下.需要新的版本可以去maven上自行选择 <!-- PageHelper 插件分页 ...

  4. Linux arp命令

    一.简介 arp命令用于操作主机的arp缓冲区,可以用来显示arp缓冲区中的所有条目.删除指定的条目或者添加静态的ip地址与MAC地址对应关系. 二.语法 -a<主机>:显示arp缓冲区的 ...

  5. mysql - 简单的触发器和存储过程

    delimiter // drop PROCEDURE proc_member_preprocessor;// )) main:BEGIN SELECT COUNT(uid) INTO @proc_h ...

  6. OpenNI depth深度数据的数据格式

    图像如何打开 如何查看它的数据格式并一个个读取 试一下ENVI等 可见,灰度图的Data只有一个值[0],而彩色图的Data却有三个值[142,119,113]. 这是用ENVI的Cursor Val ...

  7. ERROR: from PIL import Image ImportError: No module named PIL

    ERROR: from PIL import Image ImportError: No module named PIL 到 http://www.pythonware.com/products/p ...

  8. 理解Javascript的Prototype

    在Javascript中创建对象主要分为三种方式 1. var catA = {name: "Fluffy", color: "White", age: 0}; ...

  9. 第十六章 IIC协议详解+UART串口读写EEPROM

    十六.IIC协议详解+Uart串口读写EEPROM 本文由杭电网友曾凯峰根据小梅哥FPGA IIC协议基本概念公开课内容整理并最终编写Verilog代码实现使用串口读写EEPROM的功能. 以下为原文 ...

  10. add以及update

    const addressData = { name: this.post('name'), mobile: this.post('mobile'), province_id: this.post(' ...