helgesverre / brandfetch-sdk
Brandfetch 的 Laravel SDK
v1.1.0
2024-07-29 07:01 UTC
Requires
- php: ^8.2
- illuminate/contracts: ^10.0|^11.0
- saloonphp/laravel-plugin: ^3.0
- saloonphp/saloon: ^3.0
- spatie/laravel-data: *
- spatie/laravel-package-tools: ^1.14.0
Requires (Dev)
- laravel/pint: ^1.0
- nunomaduro/collision: ^7.8
- nunomaduro/larastan: ^2.0.1
- orchestra/testbench: ^8.8
- pestphp/pest: ^2.20
- pestphp/pest-plugin-arch: ^2.0
- pestphp/pest-plugin-laravel: ^2.0
- phpstan/extension-installer: ^1.1
- phpstan/phpstan-deprecation-rules: ^1.0
- phpstan/phpstan-phpunit: ^1.0
README
Brandfetch 的 Laravel SDK
Laravel SDK 用于与 Brandfetch API 交互,从 开发者门户 获取您的 API 密钥。
安装
您可以通过 composer 安装此包
composer require helgesverre/brandfetch-sdk
然后,将您的 API 密钥添加到您的 .env
文件中。
BRANDFETCH_API_KEY="your-api-key"
您可以使用以下命令发布配置文件
php artisan vendor:publish --tag="brandfetch-sdk-config"
这是已发布配置文件的内容
return [ "brandfetch_api_key" => env("BRANDFETCH_API_KEY") ];
用法
检索品牌
// Create your own instance $brandfetch = new HelgeSverre\Brandfetch(apiKey: "your-api-key"); // Or use the facade use HelgeSverre\Brandfetch\Facades\Brandfetch; $brand = Brandfetch::retrieveBrand("brandfetch.com")->json()
以 DTO 形式检索品牌
您还可以使用 ->dto()
方法检索 Spatie/Data DTO 对象,这提供了更好的自动完成支持等。
$brand = Brandfetch::retrieveBrand("brandfetch.com")->dto()
响应 DTO
retrieveBrand()->dto()
方法返回一个具有以下属性的 Brand
DTO
name
: ?string - 品牌名称。domain
: string - 与品牌关联的域名。claimed
: bool - 品牌是否已被声明。description
: ?string - 品牌的简短描述。longDescription
: ?string - 品牌的详细描述。links
: ?DataCollection ofLink
- 与品牌相关的链接集合,每个链接包含name
: string - 链接名称。url
: string - 链接 URL。
logos
: ?DataCollection ofLogo
- 与品牌相关的标志集合,每个标志包含theme
: ?string - 标志的主题。formats
: DataCollection ofFormat
- 标志的可用格式,每个格式包含src
: string - 格式的源 URL。background
: ?string - 格式的背景颜色。format
: string - 格式类型(例如,'png','svg')。size
: ?int - 格式的尺寸。height
: ?int - 格式的宽度。width
: ?int - 格式的宽度。
tags
: array - 与标志关联的标签。type
: string - 标志的类型。
colors
: ?DataCollection ofColor
- 品牌使用的颜色集合,每个颜色包含hex
: string - 颜色的十六进制代码。type
: string - 颜色的类型(例如,'primary','secondary')。brightness
: int - 颜色的亮度。
fonts
: ?DataCollection ofFont
- 品牌使用的字体集合,每个字体包含name
: ?string - 字体的名称。type
: ?string - 字体的类型。origin
: ?string - 字体的来源。originId
: ?string - 字体的来源 ID。
images
: ?DataCollection ofImage
- 与品牌相关的图片集合,每个图片包含formats
: DataCollection ofFormat
- 图片的可用格式,每个格式包含src
: string - 格式的源 URL。background
: ?string - 格式的背景颜色。format
: string - 格式类型(例如,'png','svg')。size
: ?int - 格式的尺寸。height
: ?int - 格式的宽度。width
: ?int - 格式的宽度。
tags
: array - 与图片关联的标签。type
: string - 图片的类型。
搜索品牌
$brand = Brandfetch::searchBrand("brandfetch.com")->dto()
响应 DTO
searchBrand()->dto()
方法返回一组 SearchResult
DTO
name
: ?string - 品牌名称。domain
: string - 与品牌关联的域名。claimed
: bool - 品牌是否已被声明。icon
: ?string - 品牌的图标。
您可以在这里查看 DTO。
测试
composer test
版权信息
许可证
MIT许可证(MIT)。更多信息请参阅许可证文件。
免责声明
注意:这不是Brandfetch的官方产品。
本文档中提到的所有标志、品牌和商标均属于其各自所有者。 "Brandfetch"名称、标志和品牌是"Brandfetch SA"的商标。本项目及其创建者与"Brandfetch SA"或本文档中提到的任何其他实体无关、未获认可、未获赞助或未建立联系。所有权利均归各自商标所有者所有。使用这些名称、标志和品牌并不表示认可,仅为说明之用。