راهنمای API مدیریت نقشه و مثالها، راهنمای API مدیریت نقشه و مثالها

API مدیریت نقشه به شما امکان می‌دهد منابع طراحی نقشه‌های مبتنی بر ابر خود را با استفاده از APIهای RESTful مدیریت کنید.

خلاصه مراحل

  1. از کنسول Cloud برای ایجاد شناسه نقشه استفاده کنید (محدود به نقشه‌های برداری جاوا اسکریپت).
  2. از کنسول Cloud برای ایجاد یک سبک نقشه استفاده کنید. یک سبک نقشه به عنوان پیوند بین شناسه نقشه و یک مجموعه داده استفاده می‌شود.
  3. برای ایجاد یک مجموعه داده، از کنسول ابری یا API مجموعه داده‌های نقشه‌ها استفاده کنید.
  4. از API مدیریت نقشه برای مرتبط کردن مجموعه داده‌ها با شناسه سبک استفاده کنید.
  5. از شناسه نقشه در یک برنامه (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: درخواست ناقص است.