คู่มือนี้จะช่วยยืนยันว่าการตั้งค่าการให้สิทธิ์ Fleet Engine เสร็จสมบูรณ์แล้วและคุณสร้างยานพาหนะทดลองใช้ได้ คู่มือนี้ใช้ยูทิลิตีบรรทัดคำสั่ง gcloud
เพื่อทดสอบการลงชื่อโทเค็นการให้สิทธิ์และการสร้างยานพาหนะ
หากต้องการทำขั้นตอนนี้ให้เสร็จสมบูรณ์ ให้ทำดังนี้
- แทนที่ช่องด้านล่างด้วยข้อมูลที่คุณสร้างขึ้นในการตั้งค่า
ช่อง | แทนที่ด้วย |
---|---|
PROJECT_ID | รหัสโปรเจ็กต์ที่อยู่ในระบบคลาวด์ |
SERVICE_ACCOUNT_EMAIL_ADDRESS | อีเมลของบัญชีบริการที่คุณสร้างขึ้นซึ่งมีบทบาทผู้ดูแลระบบ โปรดดูรายละเอียดที่หัวข้อบทบาทของบัญชีบริการ Mobility |
VEHICLE_ID หรือ DELIVERY_VEHICLE_ID |
รหัสแบบสุ่มสำหรับยานพาหนะ รหัสมีอักขระได้สูงสุด 64 ตัว |
ใช้ยูทิลิตี
gcloud
เพื่อเข้าสู่ระบบบัญชี Google Cloud และตั้งค่าโปรเจ็กต์ที่ใช้งานอยู่บนเวิร์กสเตชันgcloud auth login gcloud config set project PROJECT_ID
สร้างการอ้างสิทธิ์ 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
ใช้
gcloud
เพื่อลงนาม JWT นี้ด้วยสิทธิ์ IAM ที่เหมาะสม :gcloud iam service-accounts sign-jwt claim.jwt output.jwt \ --iam-account=SERVICE_ACCOUNT_EMAIL_ADDRESS
JWT ที่ลงนามแล้วจะเก็บอยู่ใน
output.jwt
โปรดดูรายละเอียดที่หัวข้อให้สิทธิ์ที่จำเป็นและคำแนะนำบรรทัดคำสั่ง
gcloud
ในเอกสารประกอบ Google Cloudใช้
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" }