Uber python API returns 乘车请求状态 409
Uber python API returns status 409 on ride request
我正在按照 GitHub
上项目页面上的说明进行操作
这是 运行 在 沙盒模式
中的全部内容
首先我打电话给
estimate = client.estimate_ride(
product_id=product_id,
start_latitude=start_lat,
start_longitude=start_long,
end_latitude=end_lat,
end_longitude=end_long,
seat_count=seat_count
)
并取回类似
的内容
{
"pickup_estimate": 2,
"trip": {
"distance_estimate": 2.18,
"distance_unit": "mile",
"duration_estimate": 240
},
"fare": {
"fare_id": "14f81e7421f0ae124c2e5a97d0b9cf975cbb84fdd2bf6fc8b7bb2f49fc6c6f8a",
"value": 8.06,
"display": ".06",
"currency_code": "USD",
"expires_at": 1489104865
}
}
然后我使用相同的 product_id 和上面得到的 fare_id(使用具有相同凭据的客户端对象)运行 this
response = client.request_ride(
product_id=product_id,
start_latitude=start_lat,
start_longitude=start_long,
end_latitude=end_lat,
end_longitude=end_long,
seat_count=seat_count,
fare_id=fare_id
)
我得到的只是一个状态为 409 的 ClientError
异常。
知道出了什么问题吗?
409 错误可能是由于您已经在该用户的沙盒中进行了一次旅行。您可以使用 client.get_current_ride_details() 检查并使用 client.cancel_current_ride() 取消正在进行的行程。
发现问题。我没有正确打印错误详细信息。结果我只看到了错误代码,没有看到详细信息。
要查看我添加的完整错误详细信息:
try:
response = client.request_ride(
product_id=product_id,
start_latitude=start_lat,
start_longitude=start_long,
end_latitude=end_lat,
end_longitude=end_long,
seat_count=seat_count,
fare_id=fare_id
)
except ClientError as error:
self.response.out.write("error: {0}, {1}".format(error.errors, error.message))
然后我得到了这个信息量很大的错误:
409 missing_payment_method 骑手必须至少有一种付款方式存档才能叫车。骑手必须添加付款方式
我正在按照 GitHub
上项目页面上的说明进行操作
这是 运行 在 沙盒模式
首先我打电话给
estimate = client.estimate_ride(
product_id=product_id,
start_latitude=start_lat,
start_longitude=start_long,
end_latitude=end_lat,
end_longitude=end_long,
seat_count=seat_count
)
并取回类似
的内容{
"pickup_estimate": 2,
"trip": {
"distance_estimate": 2.18,
"distance_unit": "mile",
"duration_estimate": 240
},
"fare": {
"fare_id": "14f81e7421f0ae124c2e5a97d0b9cf975cbb84fdd2bf6fc8b7bb2f49fc6c6f8a",
"value": 8.06,
"display": ".06",
"currency_code": "USD",
"expires_at": 1489104865
}
}
然后我使用相同的 product_id 和上面得到的 fare_id(使用具有相同凭据的客户端对象)运行 this
response = client.request_ride(
product_id=product_id,
start_latitude=start_lat,
start_longitude=start_long,
end_latitude=end_lat,
end_longitude=end_long,
seat_count=seat_count,
fare_id=fare_id
)
我得到的只是一个状态为 409 的 ClientError
异常。
知道出了什么问题吗?
409 错误可能是由于您已经在该用户的沙盒中进行了一次旅行。您可以使用 client.get_current_ride_details() 检查并使用 client.cancel_current_ride() 取消正在进行的行程。
发现问题。我没有正确打印错误详细信息。结果我只看到了错误代码,没有看到详细信息。
要查看我添加的完整错误详细信息:
try:
response = client.request_ride(
product_id=product_id,
start_latitude=start_lat,
start_longitude=start_long,
end_latitude=end_lat,
end_longitude=end_long,
seat_count=seat_count,
fare_id=fare_id
)
except ClientError as error:
self.response.out.write("error: {0}, {1}".format(error.errors, error.message))
然后我得到了这个信息量很大的错误:
409 missing_payment_method 骑手必须至少有一种付款方式存档才能叫车。骑手必须添加付款方式