gallica-lupus / laravel-newsapi
Laravel 对 https://newsapi.org/ API 的封装
1.0
2023-01-08 23:17 UTC
Requires
- php: >=7.0.0
- guzzlehttp/guzzle: ~7.0
Requires (Dev)
- laravel/laravel: ^8.75
- phpunit/phpunit: ^9.5.10
This package is not auto-updated.
Last update: 2024-10-01 05:59:41 UTC
README
Laravel 对 NewsAPI.org API 调用的封装。API 文档可以在 此处 找到。
安装
1- 在您的 composer.json
文件中通过 Composer 需求该包。
{ "require": { "gallica-lupus/laravel-newsapi": "^1.0" } }
2- 运行 Composer 安装或更新新需求。
$ composer install
或
$ composer update
3- 将服务提供者添加到您的 app/config/app.php
文件中
NewsAPI\NewsAPIServiceProvider::class,
4- 将外观添加到您的 app/config/app.php
文件中
'NewsAPI' => NewsAPI\Facades\NewsAPI::class,
5- 发布配置文件
$ php artisan vendor:publish --provider="NewsAPI\NewsAPIServiceProvider"
6- 查看配置文件并添加您的密钥(最好通过 env: 'api_key' => env('NEWSAPI_KEY')
)
config/newsapi.php
用法
请参考官方 文档,了解哪些调用可以进行,并检查 NewsAPI\Requests 下的 traits 中的调用。
例如,获取所有来源(如果使用外观)
use NewsAPI;
...
$response = NewsAPI::sources()->all();
以上返回包含一个 sources
数组的对象。
获取按国家/类别获取头条新闻
$response = NewsAPI::topHeadlines()->get([
'country' => 'gb',
'category'=>'sports'
]);
获取从 2018-05-01 到 2018-05-04 期间按发表日期排序的所有 bbc.co.uk 的新闻
$response = NewsAPI::everything()->get([
'language' => 'en',
'domains'=>'bbc.co.uk',
'from' => '2018-05-01',
'to' => ''2018-05-04,
'sortBy' => 'publishedAt',
]);