驗證設定

本指南可協助您確認 Fleet Engine 授權設定 您就能製作試用車輛本指南採用 gcloud 指令列公用程式 授權權杖簽署和車輛建立。

如要完成這項程序,請將下列欄位替換為您在設定期間建立的資料:

欄位 替換成
PROJECT_ID 您的 Cloud 專案 ID。
SERVICE_ACCOUNT_EMAIL_ADDRESS 您建立的服務帳戶電子郵件地址,該帳戶具有「管理員」角色。詳情請見 行動性服務帳戶角色

VEHICLE_ID

DELIVERY_VEHICLE_ID

車輛的隨機 ID。ID 的長度上限為 64 個半形字元。
  1. 使用 gcloud 公用程式登入 Google Cloud 帳戶,並在工作站上設定有效專案:

    gcloud auth login
    gcloud config set project PROJECT_ID
    
  2. 為建立車輛建立 JSON Web Token (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 簽署此 JWT:

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

    已簽署的 JWT 會儲存在 output.jwt 中。

    詳情請參閱 gcloud 指令列指南

  4. 使用 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"
        }
        

後續步驟