本指南可帮助您验证 Fleet Engine 授权设置是否已完成,以及您是否可以创建试用车辆。本指南使用 gcloud 命令行实用程序来测试授权令牌签名和车辆创建。
如需完成此流程,请执行以下操作:
- 将以下字段替换为您在设置过程中创建的数据:
| 字段 | 替换为 | 
|---|---|
| PROJECT_ID | 您的 Cloud 项目 ID。 | 
| SERVICE_ACCOUNT_EMAIL_ADDRESS | 您创建的具有管理员角色的服务账号的电子邮件地址。如需了解详情,请参阅移动服务账号角色。 | 
| VEHICLE_ID OR DELIVERY_VEHICLE_ID | 车辆的随机 ID。ID 最多可包含 64 个字符。 | 
- 使用 - gcloud实用程序登录 Google Cloud 账号,并在工作站上设置有效项目:- gcloud auth login gcloud config set project PROJECT_ID
- 为车辆创建操作创建 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
- 使用 - 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命令行指南。
- 使用 - curl在 Fleet Engine 上创建测试车辆:- 按需行程- 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" }