Hướng dẫn này giúp bạn xác minh rằng bạn đã hoàn tất việc thiết lập uỷ quyền cho Fleet Engine và có thể tạo một chiếc xe thử nghiệm. Hướng dẫn này sử dụng
tiện ích dòng lệnh gcloudđể kiểm thử
việc ký mã thông báo uỷ quyền và tạo xe.
Để hoàn tất quy trình này, hãy làm như sau:
- Thay thế các trường bên dưới bằng dữ liệu mà bạn đã tạo trong quá trình thiết lập:
| Trường | Thay thế bằng |
|---|---|
| PROJECT_ID | Mã dự án trên đám mây của bạn. |
| SERVICE_ACCOUNT_EMAIL_ADDRESS | Địa chỉ email của một tài khoản dịch vụ mà bạn đã tạo bằng vai trò Quản trị viên. Xem Vai trò của tài khoản dịch vụ hỗ trợ di chuyển để biết thông tin chi tiết. |
VEHICLE_ID HOẶC DELIVERY_VEHICLE_ID |
Mã nhận dạng ngẫu nhiên cho xe. Mã này có thể chứa tối đa 64 ký tự. |
Sử dụng tiện ích
gcloudđể đăng nhập vào tài khoản Google Cloud và đặt dự án đang hoạt động trên máy trạm:gcloud auth login gcloud config set project PROJECT_IDTạo một yêu cầu khai báo Mã thông báo web JSON (JWT) để tạo xe:
Chuyến đi theo yêu cầu
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" } } EOMNhiệm vụ đã lên lịch
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" } } EOMSử dụng
gcloudđể ký JWT này bằng các quyền IAM thích hợp. :gcloud iam service-accounts sign-jwt claim.jwt output.jwt \ --iam-account=SERVICE_ACCOUNT_EMAIL_ADDRESSJWT đã ký được lưu trữ trong
output.jwt.Để biết thông tin chi tiết, hãy xem bài viết Cung cấp các quyền bắt buộc và hướng dẫn dòng lệnh
gcloudtrong tài liệu Google Cloud.Sử dụng
curlđể tạo một chiếc xe thử nghiệm trên Fleet Engine:Chuyến đi theo yêu cầu
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"}] }Lệnh này sẽ in tên của xe dưới dạng đầu ra. Nếu bạn thấy văn bản sau, tức là bạn đã thiết lập thành công.
{ "name": "providers/PROJECT_ID/vehicles/VEHICLE_ID" }Nhiệm vụ đã lên lịch
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" } EOMLệnh này sẽ in tên của xe giao hàng dưới dạng đầu ra. Nếu bạn thấy văn bản sau, tức là bạn đã thiết lập thành công.
{ "name": "providers/PROJECT_ID/deliveryVehicles/DELIVERY_VEHICLE_ID" }