Я немного озадачен тем, где что-то подобное принадлежит Ларавеллу.
Я хочу написать оболочку клиента веб-службы на laravel, и я хочу получить к ней доступ следующим образом:
\MyWSClient::getSomeInfoAbout($someId);
Затем код будет подключен к веб-службе http://www.someapi.com/api/getSomeInfoAbout?id=$ someid&type = json с OAuth2 или некоторыми запросами токена, затем извлекайте данные, сохраняйте информацию токена до истечения срока действия, обновляйте токен при необходимости и т. д.
Но куда я положу код? в vendor
каталог как новый пакет? Я перемещаю этот код с компьютера на другой компьютер, кроме vendor
,storage
а также node_modules
папки, потому что они огромные, и когда я это сделаю, мне придется переместить только одну папку в каталоге поставщика. И мне нужно будет публиковать разрабатываемый пакет для композитора, если я хочу переносимости и т. Д.
Есть ли другой способ сделать что-то подобное?
Я думаю, что нашел ответ.
Сначала мне нужно было использовать jeroen-g/laravel-packager
пакет для создания нового пакета с помощью консоли ремесленника. Я мог бы сделать это вручную, но я не знал необходимых файлов.
Во-вторых, я создал новый пакет в packages
папка с моим желаемым именем класса.
В-третьих, я добавил провайдера и псевдоним для класса в app.php
,
После этого я создал тестовый метод в своем контроллере и написал маршрут для этого. Я назвал статический метод, который я написал в SkeletonClass
упаковщик создан для меня.
И это работало с некоторыми изменениями после создания.
Я использовал php artisan packager:new tpaksu mypackage --i
команда для создания интерактивного пакета, что круто.
Замечания: Я только что узнал о существовании этого пакета, я не рекламирую его 🙂
Других решений пока нет …