LaravelPackages.net
Acme Inc.
Toggle sidebar
softlabnet/weather

Weather test example

9
0
0.1
About softlabnet/weather

softlabnet/weather is a Laravel package for weather test example. It currently has 0 GitHub stars and 9 downloads on Packagist (latest version 0.1). Install it with composer require softlabnet/weather. Discover more Laravel packages by softlabnet or browse all Laravel packages to compare alternatives.

Last updated

Пакет запроса погодных данных

Пакет предназначен для получения данных о погоде через сторонние ресурсы

Установка


Packagist тормозит с обновлением, положил композер, который подключает покат по симлинку. Нужно дополнительно зайти в папку packages и склонировать с гитхаба:

git clone https://github.com/softlab2/weather.git


С помощью Composer

composer require softlabnet/weather

Публикуем файл настроек

php artisan vendor:publish --provider="Softlab\Weather\WeatherServiceProvider" --tag="weather"

Описание

Пакет предоставляет погодный апи для сайта.

Можно использовать несколько источников данных, для смены источника используется переменная WEATHER_SOURCE в файле .env, по умолчанию источник yandex.

Регистрация источника данных в сервис провайдере приложения:

$this->app['weather']->add('yandex', \Softlab\Weather\Sources\YandexSource::class);

Класс источника данных должен расширять базовый класс \Softlab\Weather\Source и реализовывать интерфейс \Softlab\Weather\SourceInterface:

Метод формирует запрос к источнику данных
public function prepareRequest( Point $point ) : WeatherRequest;

Метод приводит ответ от источника данных к стандартному виду public function prepareResponse( $data ) : WeatherResponse;

Конфигурация для источника данных: url, api key и т.д. находятся в файле config/weather.php

Чтобы не запрашивать каждый раз данные от источника, для каждой точки данные хранятся в кэше.

Сейчас из ответа берется только температура.

Star History Chart