navigator.geolocation.getCurrentPosition() 未收到来自 googleapi 的响应
navigator.geolocation.getCurrentPosition() is not getting a response from googleapi
我正在使用 React 在 localhost:3000 上获取地理定位。我看到另一个人在他们的本地主机上获得了地理位置坐标,但即使在 Chrome.
上启用了允许位置访问,我也无法这样做
我尝试在 React 中同时使用钩子和 class 语法。我已启用允许访问。我最终使用了一个 ip 地址 api 来获得一个大概的位置,但是由于地理定位应该起作用(至少我被告知是这样的)我至少希望看到它起作用所以我可以实现它将来使用 https。错误日志甚至不会被触发,而前三个日志在组件安装时被触发。这是我试过的代码,我已经尽可能简单了:
const App = props => {
useEffect(() => {
console.log('hello')
console.log(navigator)
console.log(navigator.geolocation)
if ("geolocation" in navigator) {
navigator.geolocation.getCurrentPosition((position) => {
console.log(position)
}, (error) => {
console.log(error)
})
} else {
console.log('error')
}
}, [])
return (
<div>
<h3>Please Login.</h3>
</div>
)
}
export default App
我希望收到来自 googleapi 的回复。
编辑:
我添加了错误回调并打印了:
留言:"Network location provider at 'https://www.googleapis.com/' : No response received."
添加可选的错误回调来处理错误(如果用户拒绝位置权限)
navigator.geolocation.getCurrentPosition(success[, error[, [options]])
你只是在检查它是否在导航器中!!!
如果用户拒绝位置许可,则错误回调将处理它...
可能的选项是(参考自 mdn)
{
enableHighAccuracy: true,
maximumAge : 30000,
timeout : 27000
}
我正在使用 React 在 localhost:3000 上获取地理定位。我看到另一个人在他们的本地主机上获得了地理位置坐标,但即使在 Chrome.
上启用了允许位置访问,我也无法这样做我尝试在 React 中同时使用钩子和 class 语法。我已启用允许访问。我最终使用了一个 ip 地址 api 来获得一个大概的位置,但是由于地理定位应该起作用(至少我被告知是这样的)我至少希望看到它起作用所以我可以实现它将来使用 https。错误日志甚至不会被触发,而前三个日志在组件安装时被触发。这是我试过的代码,我已经尽可能简单了:
const App = props => {
useEffect(() => {
console.log('hello')
console.log(navigator)
console.log(navigator.geolocation)
if ("geolocation" in navigator) {
navigator.geolocation.getCurrentPosition((position) => {
console.log(position)
}, (error) => {
console.log(error)
})
} else {
console.log('error')
}
}, [])
return (
<div>
<h3>Please Login.</h3>
</div>
)
}
export default App
我希望收到来自 googleapi 的回复。
编辑:
我添加了错误回调并打印了:
留言:"Network location provider at 'https://www.googleapis.com/' : No response received."
添加可选的错误回调来处理错误(如果用户拒绝位置权限)
navigator.geolocation.getCurrentPosition(success[, error[, [options]])
你只是在检查它是否在导航器中!!!
如果用户拒绝位置许可,则错误回调将处理它...
可能的选项是(参考自 mdn)
{
enableHighAccuracy: true,
maximumAge : 30000,
timeout : 27000
}