API مدیریت نقشه به شما امکان میدهد منابع طراحی نقشههای مبتنی بر ابر خود را با استفاده از APIهای RESTful مدیریت کنید.
خلاصه مراحل
- از کنسول Cloud برای ایجاد شناسه نقشه استفاده کنید (محدود به نقشههای برداری جاوا اسکریپت).
- از کنسول Cloud برای ایجاد یک سبک نقشه استفاده کنید. یک سبک نقشه به عنوان پیوند بین شناسه نقشه و یک مجموعه داده استفاده میشود.
- برای ایجاد یک مجموعه داده، از کنسول ابری یا API مجموعه دادههای نقشهها استفاده کنید.
- از API مدیریت نقشه برای مرتبط کردن مجموعه دادهها با شناسه سبک استفاده کنید.
- از شناسه نقشه در یک برنامه (JS، iOS یا Android) استفاده کنید و از API استایلدهی مبتنی بر داده برای استایلدهی به ویژگیهای مجموعه داده استفاده کنید.
انواع
ارتباط سبک مجموعه داده
نوع: شیء/نمونه اولیه
رابطه بین یک مجموعه داده موجود و یک سبک کلاینت موجود را کپسوله سازی میکند.
message DatasetStyleAssociation {
option (google.api.resource) = {
type: "mapstyling.googleapis.com/DatasetStyleAssociation"
pattern: "projects/{project}/datasets/{dataset}/clientStyles/{client_style}"
plural: "datasetStyleAssociations",
singular: "datasetStyleAssociation"
};
// Resource name.
// projects/{project}/datasets/{dataset}/clientStyles/{client_style}
string name = 1;
// The resource name of the style.
// projects/{project}/clientStyles/{client_style}
string client_style = 2;
روشها
ایجادDatasetStyleAssociation
rpc CreateDatasetStyleAssociation(CreateDatasetStyleAssociationRequest)
returns (DatasetStyleAssociation) {
option (google.api.http) = {
post: "/v1/{parent=projects/*/datasets/*}"
body: "dataset_style_association"
};
option (google.api.method_signature) = parent,dataset_style_association";
}
ListDatasetStyleAssociations
rpc ListDatasetStyleAssociations(ListDatasetStyleAssociationsRequest)
returns (ListDatasetStyleAssociationsResponse) {
option (google.api.http) = {
get: "/v1/{parent=projects/*/datasets/*}"
};
option (google.api.method_signature) = "parent";
}
ارتباط سبک مجموعه داده را حذف کنید
rpc DeleteDatasetStyleAssociation(DeleteDatasetStyleAssociationRequest)
returns (google.protobuf.Empty) {
option (google.api.http) = {
post: "/v1/{name=projects/*/datasets/*/clientStyles/*}:delete"
body: "*"
};
option (google.api.method_signature) = "name";
}
مثال فراخوانیهای C++
نمونه فراخوانی برای ایجاد نقطه پایانی
<pre>curl --http2 -X POST -H 'Content-Type: application/json' -H 'Authorization: Bearer <Token>' https://mapmanagement.googleapis.com/v1/projects/<Project_Number>/datasets/{dataset_id} -d '{name: "projects/{project_number}/datasets/{dataset_id}/clientStyles/{style_id}", client_style: "projects/{project_number}/clientStyles/{style_id}" }'</pre>
نمونه فراخوانی به نقطه پایانی لیست
<pre>curl --http2 -X GET -H 'Content-Type: application/json' -H 'Authorization: Bearer <Token>' https://mapmanagement.googleapis.com/v1/projects/<Project_Number>/datasets/-</pre>
نمونه فراخوانی برای فهرست کردن نقشههای مرتبط
<pre>curl --http2 -X GET -H 'Content-Type: application/json' -H 'Authorization: Bearer <Token>' https://mapmanagement.googleapis.com/v1/projects/<Project_Number>/datasets/<dataset-id>/clientStyles/<style_id>:listAssociatedMaps</pre>
نمونه فراخوانی برای حذف نقطه پایانی
<pre>curl --http2 -X POST -H 'Content-Type: application/json' -H 'Authorization: Bearer <Token>' https://mapmanagement.googleapis.com/v1/projects/<Project_Number>/datasets/<dataset_id>/clientStyles/<style_id>:delete -d '{"map_ids": ["map-id-1", "map-id-2"]}'</pre>
خطاها
PERMISSION_DENIED: این خطاها همیشه جزئیات مربوط به دسترسی به منابع را شرح میدهند. برای مثال، زمانی که API برای پروژه ارائه شده فعال نیست.
ALREADY_EXISTS: با فراخوانی Create و در زمانی که DatasetStyleAssociation از قبل وجود داشته باشد، فعال میشود.
NOT_FOUND: توسط هر یک از روشهای فوق و زمانی که تلاشی برای دسترسی به منبعی که وجود ندارد، مانند یک Style، Dataset یا Project، انجام میشود، فعال میشود.
INVALID_ARGUMENT: درخواست ناقص است.