2017-01-23 13 views
0

Я использую Laravel 5.3 с Pusher, и все работает хорошо.Laravel 5.3, ECHO & Pusher, export Pusher secret to .env

Однако я хотел бы экспортировать свои учетные данные Pusher в .env. Или где-нибудь еще, чтобы я мог легко использовать различные приложения Pusher в своих установках dev/staging/production.

Это моя установка:

импорт Эхо из "Laravel-эхо"

window.Echo = new Echo({ 
    broadcaster: 'pusher', 
    key: 'myKey', //development key 
    cluster: 'eu', 
    encrypted: true 
}); 

В gulpfile.js У меня есть

elixir(function(mix) { 
    mix.webpack('echo.js','./resources/assets/js/'); 
}); 

затем

mix.scripts([ 
    'echo.js', 
    ... 
], 'public/js/all.js'); 

и, наконец, мой взгляд :

let myRoom = 'room-user-'+'{{ Auth::user()->id }}'; 
    Echo.private(myRoom) 
     .listen('MyEvent', (e) => { 
      console.log(e); 
     }); 

Как я уже сказал, все это хорошо работает.

Моя проблема key: 'myKey', //development key. Есть ли простой способ использовать переменную среды Laravel env('PUSHER_KEY') здесь? Потому что теперь мне нужно использовать одно и то же приложение Pusher в моем развитии, постановке и производстве.

Также мой config/broadcasting является

'connections' => [ 

    'pusher' => [ 
     'driver' => 'pusher', 
     'key' => env('PUSHER_KEY'), 
     'secret' => env('PUSHER_SECRET'), 
     'app_id' => env('PUSHER_APP_ID'), 
     'options' => [ 
      'cluster' => env('PUSHER_CLUSTER','eu'), 
      'encrypted' => true, 
     ], 
    ], 

ответ

0

Я закончил с использованием laravel-elixir-env библиотеки как:

gulpfile.js

var elixir = require('laravel-elixir'); 
require('laravel-elixir-env'); 
... 
elixir(function(mix) { 
    mix.webpack('echo.js','./resources/assets/js/'); 
}); 
... 

echo.js

import Echo from "laravel-echo" 
window.Echo = new Echo({ 
    broadcaster: 'pusher', 
    key: process.env.PUSHER_KEY, 
    cluster: 'eu', 
    encrypted: true 
}); 

.env

... 
PUSHER_KEY=my_pusher_key 
... 

 Смежные вопросы

  • Нет связанных вопросов^_^