bakerkretzmar/laravel-mapbox

用于管理 Mapbox 数据集和瓦片集的 Laravel 扩展包。

1.1.1 2019-11-29 14:46 UTC

This package is auto-updated.

Last update: 2024-08-29 05:22:47 UTC


README

Build status StyleCI Scrutinizer code quality Code coverage Latest stable version Total downloads

这是一个轻量级的包装器,用于在 Laravel 应用中轻松处理 Mapbox 地图服务 API。基于 Matt Fox 的 mapbox-api-laravel

此扩展包通过 Mapbox API 支持管理以下服务

数据集要素瓦片集上传

安装

composer require bakerkretzmar/laravel-mapbox

配置

将以下内容添加到您的 .env 文件中

MAPBOX_USERNAME={your Mapbox username}
MAPBOX_TOKEN={your Mapbox access token}

可选地,您可以发布扩展包的配置文件

php artisan vendor:publish --provider="bakerkretzmar\LaravelMapbox\LaravelMapboxServiceProvider"

使用方法

数据集

Mapbox 文档。

列出数据集

$datasets = Mapbox::datasets()->list();

获取数据集

$dataset = Mapbox::datasets($dataset_id)->get();

创建数据集

$dataset = Mapbox::datasets()->create();
// or
$dataset = Mapbox::datasets()->create([
    'name' => 'My Dataset',
    'description' => 'A new Mapbox Dataset',
]);

更新数据集

$dataset = Mapbox::datasets($dataset_id)->update([
    'name' => 'My Updated Dataset',
    'description' => 'An updated Mapbox Dataset',
]);

删除数据集

Mapbox::datasets($dataset_id)->delete();

要素

Mapbox 文档。

列出要素

$features = Mapbox::datasets($dataset_id)->features()->list();
// or
$features = Mapbox::features($dataset_id)->list();

获取要素

$feature = Mapbox::datasets($dataset_id)->features($feature_id)->get();
// or
$feature = Mapbox::features($dataset_id, $feature_id)->get();

创建或更新要素

$feature = Mapbox::datasets($dataset_id)->features()->add($feature);
// or
$feature = Mapbox::features($dataset_id)->add($feature);

删除要素

Mapbox::datasets($dataset_id)->features($feature_id)->delete();
// or
Mapbox::features($dataset_id, $feature_id)->delete();

瓦片集

Mapbox 文档。

列出瓦片集

$tilesets = Mapbox::tilesets()->list();

删除瓦片集

Mapbox::tilesets($tileset)->delete();

上传

Mapbox 文档。

获取临时 S3 凭证

$credentials = Mapbox::uploads()->credentials();

创建上传

$upload = Mapbox::uploads()->create([
    'tileset' => 'my_tileset_name',
    'url' => 'http://{bucket}.s3.amazonaws.com/{key}',
    'name' => 'My Tileset',
]);
// or
$upload = Mapbox::uploads()->create([
    'tileset' => 'my_tileset_name',
    'dataset' => 'my_dataset_id',
    'name' => 'My Tileset',
]);

获取上传状态

$upload = Mapbox::uploads($upload_id)->get();

列出上传状态

$uploads = Mapbox::uploads()->list();

删除上传

Mapbox::uploads($upload_id)->delete();

测试

注意 — 测试将调用真实的 Mapbox API。在测试扩展包之前,请设置包含有效 Mapbox 凭证的本地测试环境文件(cp .env.testing.example .env.testing 并填写空白)。

composer test

更新日志

查看 更新日志 了解最近的变化。

安全

如果您发现任何安全问题,请通过电子邮件 jacobtbk@gmail.com 而不是使用问题跟踪器来报告。

许可

此扩展包受 MIT 许可证(MIT)许可。请参阅 LICENSE 了解详细信息。