我一直在试图弄清楚如何使该VUE项目与Lyft API一起使用。我已经能够从三足过程中成功创建一个auth令牌,但是我无法从localhost:8080
获得可用的驱动器类型https://api.lyft.com/v1/ridetypes
端点。它确实在 Postman 。
它一直在说:
访问xmlhttprequest at 'https://api.lyft.com/v1/ridetypes?lat=37.7752315&lng=-122.418075' 从原点'http://localhost:8080'被CORS策略所阻止: 对飞行前请求的响应不会传递访问控制检查:否 请求的"访问控制"标头 资源。
我曾尝试使用vue.config.js
文件进行代理:
module.exports = {
devServer: {
proxy: {
'/lyftapi': {
target: 'https://api.lyft.com/v1',
ws: true,
changeOrigin: true
}
}
}
}
我一直在堆栈溢出的其他部分,这是最接近我的问题,但没有答案。
最近启动了Lyft API中的CORS错误
有什么建议?
Axios获取呼叫
axios.get('/ridetypes', {
baseURL: 'https://api.lyft.com/v1',
headers: {
'Authorization': this.lyftToken,
},
params: {
lat: lat.toString(),
lng: long.toString()
}
})
如果这意味着什么,我能够成功地获得取回Uber产品的电话,但没有那么多的auth代币(除非来自Postman)。
lyft-api已禁用CORS,这意味着浏览器将阻止对api.lyft.com
的调用。
vue将无法做任何事情,因为这是浏览器安全策略。
幸运的是,您可以阻止您从自己的服务器拨打这个电话。
一种解决方案是使用自己的服务器转发请求和响应。您打电话给服务器,服务器致电Lyft,等待响应然后响应您的请求。
这是不是仅VUE解决方案。