【发布时间】:2022-02-06 01:14:13
【问题描述】:
我需要构建一个项目来获取用户的国家或地区。前端用户需要授予权限,这对 API 调用来说可能很麻烦。 有什么方法可以从 node.js(express) 服务器中的 IP 地址获取用户的大概位置?
【问题讨论】:
标签: node.js express geolocation ip
我需要构建一个项目来获取用户的国家或地区。前端用户需要授予权限,这对 API 调用来说可能很麻烦。 有什么方法可以从 node.js(express) 服务器中的 IP 地址获取用户的大概位置?
【问题讨论】:
标签: node.js express geolocation ip
一种解决方案可能是使用返回给定 IP 的地理信息的 API。
一个样本可能是这个使用ip-api
const fetch = require('node-fetch')
const express = require('express')
const app = express()
const port = 3000
app.post('/location_specific_service', async (req, res) => {
var fetch_res = await fetch(`https://ipapi.co/${req.ip}/json/`);
var fetch_data = await res.json()
res.send(`You are from ${fetch_data.region}`)
})
app.listen(port, () => {
console.log(`Example app listening on port ${port}`)
})
【讨论】: