LYFT, запрашивающий поездку, возвращает ошибку отсутствующих параметров - PullRequest
0 голосов
/ 26 апреля 2018

Я сталкиваюсь с ошибкой, которую пытаюсь исправить.При отправке почтового запроса: https://api.lyft.com/v1/rides с использованием среды песочницы (и, следовательно, токена доступа к серверу) я вижу следующий ответ:

{
    "error_detail":[
        {"origin.lat":"Missing required parameter"},
        {"origin.lng":"Missing required parameter"}],
        "error":"bad_parameter"
}

, который предполагает, что эти два параметраотсутствует.Однако эти параметры включены в мой запрос следующим образом:

{
    "method":"POST",
    "form":{
            "ride_type":"lyft",
            "origin":{
                    "lat":"37.773972",
                    "lng":"-122.431297"
            },
            "destination":{
                    "lat":"37.6213129",
                    "lng":"-122.3789554"
            }
    },
    "url":"https://api.lyft.com/v1/rides",
    "href":"https://api.lyft.com/v1/rides",
    "pathname":"",
    "headers":{
        "Content-Type":"application/json",
        "Authorization":"Bearer THE-SERVER-ACCESS-TOKEN-MADE-WITH-SANDBOX-PREFIX"
    }
}

В качестве альтернативы сервер иногда отвечает, что отсутствует ride_type , которого нет.

Может кто-тоскажите пожалуйста что мне здесь не хватает?Я использую сервер NodeJs, с запрос библиотека

1 Ответ

0 голосов
/ 21 мая 2018

Я не очень широко использовал библиотеку запросов к узлам, но это может быть связано с тем, что ваш json не будет сериализован до необходимого вам уровня глубины.Вы пробовали использовать axios ?Это действительно популярный http api, который может исправить ваши ошибки.Ваш запрос будет выглядеть так:

axios.post('https://api.lyft.com/v1/rides', {
  ride_type: 'lyft',
  origin: {
    lat: '37.773972',
    lng: '-122.431297'
  },
  destination: {
    lat: '37.6213129',
    lng: '-122.3789554'
  }
}, {
  headers: {
    Authorization: 'Bearer <access_token>'
  }
})
.then(succ => console.log(succ.data))
.catch(err => console.log(err))
...