2014-12-11 2 views
1

ПроектаСоздания нового экземпляра библиотеки YouTube с Laravel для каждого пользователя

Я строй социальной приборной панели, которая тянет в содержании от YouTube, используя Laravel вместе с этой библиотекой https://github.com/alaouy/youtube.

Проблема

Это все работает прекрасно, когда я установил потребительский секрет в файле пакет конфигурации, но я хочу каждую панель, чтобы иметь свой собственный ключ API, чтобы сохранить ограничение скорости и т.д. вплоть до каждой конкретной панели. На данный момент в моем приложении есть функциональность, чтобы сохранить их ключ в базе данных и получить его. Однако я смущен тем, как я изменяю этот ключ на основе текущей панели. Если я перезаписываю файл конфигурации, конечно, что обновления для каждого пользователя в системе, которые не очень хороши.

Кажется, мне нужен новый экземпляр библиотеки для каждого пользователя и передать в Ключ API. Это возможно, как это работает в настоящее время с Laravel под капотом, но я не уверен. Если это так, я действительно не уверен, как подойти к этому с хорошей масштабируемостью.

ответ

1

Вы можете установить значения конфигурации Laravel во время выполнения и, следовательно, переопределить ключ API из файла конфигурации.
Попробуйте это:

Config::set('alaouy/youtube::KEY', 'the-api-key'); 
+0

Это была моя первая мысль. Но, рискуя звучать как полный идиот, не означает ли это, что конфигурация будет настроена для всех пользователей системы, а не только для этого канала? –

+1

Нет, это повлияет только на текущий запрос. Он не изменит конфигурационный файл или не сохранит ключ API. – lukasgeiter

+0

Хорошо круто. Поэтому, если пользователь A обновляет его до своего ключа, когда пользователь B делает, они не постоянно борются за одну и ту же переменную? –

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