pushlogicltd/mapbox-api-laravel

Laravel 11+ 版本用于管理 Mapbox 数据集和瓦片集的包

v1.0.1 2024-05-07 13:27 UTC

This package is auto-updated.

Last update: 2024-09-07 14:12:06 UTC


README

Build Status Latest Stable Version Latest Unstable Version Monthly Downloads License

一个用于管理 Mapbox 数据集和瓦片集的 Laravel 11+ 包

该库通过 Mapbox API 支持以下类型的列表、创建和删除

  1. 数据集
  2. 瓦片集
  3. 上传

安装

通过 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();