我是一个 Laravel 小白,我是一个 Laravel 小白,我是一个 Laravel 小白(默念三遍再往下读,若是非小白就不用看了)。php
Laravel 使用 Composer 来管理代码依赖。因此,在使用 Laravel 以前,请先确认你的电脑上安装了 Composer。laravel
这说明没有安装 Composer 就没法安装使用 Laravel。git
1.使用 Composer 下载 Laravel 安装包:github
$ composer global require "laravel/installer"
2.这时候会发现命令行找不到 laravel
命令web
那是由于 laravel 命令不在 PATH 路径下面,因此还须要将 ~/.composer/vendor/bin
路径加入到 PATH。
(这个路径是 Laravel 中文文档中说的,但我本机不一样,我本机是 ~/.config/composer/vendor/bin
)json
而后就找到了。api
到这里 Laravel 已经安装成功。浏览器
3.建立一个新的 Laravel 项目:bash
$ 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 !
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 极光推送指北
知乎专栏:极光日报