pushlogicltd / mapbox-api-laravel
Laravel 11+ 版本用于管理 Mapbox 数据集和瓦片集的包
v1.0.1
2024-05-07 13:27 UTC
Requires
- php: >=8.2.0
- guzzlehttp/guzzle: ^7.2
- illuminate/contracts: ^11.0
- illuminate/support: ^11.0
- jmikola/geojson: ^1.1.2
Requires (Dev)
- orchestra/testbench: ^8.14.0
- phpunit/phpunit: ^10.1
This package is auto-updated.
Last update: 2024-09-07 14:12:06 UTC
README
一个用于管理 Mapbox 数据集和瓦片集的 Laravel 11+ 包
该库通过 Mapbox API 支持以下类型的列表、创建和删除
安装
通过 Composer 安装
composer require pushlogicltd/mapbox-api-laravel
Laravel 11+
服务提供者应自动注册。
// Facade Alias
'Mapbox' => PushLogicLtd\MapBoxAPILaravel\Facades\Mapbox::class,
Lumen
// bootstrap/app.php:
$app->register(PushLogicLtd\MapBoxAPILaravel\MapBoxAPILaravelServiceProvider::class);
$app->withFacades(true, [
'PushLogicLtd\MapBoxAPILaravel\Facades\Mapbox' => 'Mapbox'
]);
配置
将以下内容添加到您的 .env
文件中
MAPBOX_ACCESS_TOKEN=[Your Mapbox Access Token]
MAPBOX_USERNAME=[Your Mapbox Username]
注意:确保您的访问令牌具有执行所需所有操作的适当范围。
用法
数据集
列出数据集
$list = Mapbox::datasets()->list();
创建数据集
$dataset = Mapbox::datasets()->create([
'name' => 'My Dataset',
'description' => 'This is my dataset'
]);
检索数据集
$dataset = Mapbox::datasets($datasetID)->get();
更新数据集
$dataset = Mapbox::datasets($datasetID)->update([
'name' => 'My Dataset Updated',
'description' => 'This is my latest dataset'
]);
删除数据集
$response = Mapbox::datasets($datasetID)->delete();
列出要素
$response = Mapbox::datasets($datasetID)->features()->list();
插入或更新要素
$response = Mapbox::datasets($datasetID)->features()->add($feature);
检索要素
$response = Mapbox::datasets($datasetID)->features($featureID)->get();
删除要素
$response = Mapbox::datasets($datasetID)->features($featureID)->delete();
瓦片集
列出瓦片集
// Options array is optional
$list = Mapbox::tilesets()->list([
'type' => 'raster',
'visibility' => 'public',
'sortby' => 'modified',
'limit' => 500
]);
上传
获取 S3 凭据
// Returns S3Credentials Object
$response = Mapbox::uploads()->credentials();
创建上传
$response = Mapbox::uploads()->create([
'tileset' => '{username}.mytilesetid',
'url' => 'mapbox://datasets/{username}/{dataset}', // Or S3 Bucket URL from S3Credentials Object
'name' => 'Upload Name'
]);
检索上传状态
$response = Mapbox::uploads($uploadID)->get();
列出上传状态
$list = Mapbox::uploads()->list();
删除上传
$response = Mapbox::uploads($uploadID)->delete();