验证设置

本指南可帮助您验证 Fleet Engine 授权设置是否已完成,以及您是否可以创建试用车辆。本指南使用 gcloud 命令行实用程序测试授权令牌签名和车辆创建。

若要完成此流程,请执行以下操作:

  1. 将以下字段替换为您在设置过程中创建的数据:
字段 替换为
PROJECT_ID 您的 Cloud 项目 ID。
SERVICE_ACCOUNT_EMAIL_ADDRESS 您创建的具有“管理员”角色的服务账号的电子邮件地址。如需了解详情,请参阅移动服务账号角色

VEHICLE_ID

OR

DELIVERY_VEHICLE_ID

车辆的随机 ID。该 ID 最多可包含 64 个字符。
  1. 使用 gcloud 实用程序登录 Google Cloud 账号,并在工作站上设置活跃项目:

    gcloud auth login
    gcloud config set project PROJECT_ID
    
  2. 为创建车辆创建 JSON Web 令牌 (JWT) 声明:

    按需行程

        cat > claim.jwt << EOM
        {
          "iss": "SERVICE_ACCOUNT_EMAIL_ADDRESS",
          "sub": "SERVICE_ACCOUNT_EMAIL_ADDRESS",
          "aud": "https://fleetengine.googleapis.com/",
          "iat": $(date +%s),
          "exp": $((`date +%s` + 3600)),
          "authorization": {
            "vehicleid": "VEHICLE_ID"
          }
        }
        EOM
        

    计划任务

        cat > claim.jwt << EOM
        {
          "iss": "SERVICE_ACCOUNT_EMAIL_ADDRESS",
          "sub": "SERVICE_ACCOUNT_EMAIL_ADDRESS",
          "aud": "https://fleetengine.googleapis.com/",
          "iat": $(date +%s),
          "exp": $((`date +%s` + 3600)),
          "authorization": {
            "deliveryvehicleid": "DELIVERY_VEHICLE_ID"
          }
        }
        EOM
        
  3. 使用 gcloud 并具备适当的 IAM 权限为此 JWT 签名。:

    gcloud iam service-accounts sign-jwt claim.jwt output.jwt \
      --iam-account=SERVICE_ACCOUNT_EMAIL_ADDRESS
    

    已签名的 JWT 存储在 output.jwt 中。

    如需了解详情,请参阅 Google Cloud 文档中的提供所需权限gcloud 命令行指南

  4. 使用 curl 在车队引擎上创建测试车辆:

    按需行程

        curl -X POST "https://fleetengine.googleapis.com/v1/providers/PROJECT_ID/vehicles?vehicleId=VEHICLE_ID" \
          -H "Content-type: application/json" \
          -H "Authorization: Bearer $(cat output.jwt)" \
          --data-binary @- << EOM
        {
          "name": "providers/PROJECT_ID/vehicles/VEHICLE_ID"
        }
        EOM
        {
          "vehicleState": "OFFLINE",
          "supportedTripTypes": ["EXCLUSIVE"],
          "maximumCapacity": 4,
          "vehicleType": {"category": "AUTO"},
          "attributes": [{"key": "on_trip", "value": "false"}]
        }
        

    此命令应输出车辆名称。如果您看到以下文字,则表示设置成功。

        {
          "name": "providers/PROJECT_ID/vehicles/VEHICLE_ID"
        }
        

    计划任务

        curl -X POST "https://fleetengine.googleapis.com/v1/providers/PROJECT_ID/deliveryVehicles?deliveryVehicleId=DELIVERY_VEHICLE_ID" \
          -H "Content-type: application/json" \
          -H "Authorization: Bearer $(cat output.jwt)" \
          --data-binary @- << EOM
        {
          "name": "providers/PROJECT_ID/deliveryVehicles/DELIVERY_VEHICLE_ID"
        }
        EOM
        

    此命令应输出配送车辆的名称。如果您看到以下文字,则表示设置成功。

        {
          "name": "providers/PROJECT_ID/deliveryVehicles/DELIVERY_VEHICLE_ID"
        }
        

后续步骤