Wenn Sie die Landesvorwahl erhalten möchten, ohne um Erlaubnis zu bitten, können Sie einen schwierigen Weg wählen.
Die Methode verwendet einfach eine API, um den Ländercode abzurufen, und es gibt keine Bibliotheken von Drittanbietern, auf die Sie sich verlassen können. Wir können eine für uns erstellen.
Hier habe ich Google Cloud-Funktionen verwendet , um eine API zu schreiben, und es ist so mühelos.
Schritt 1: Erstellen Sie ein Google Cloud-Konto und richten Sie die Abrechnung ein (die kostenlose Stufe reicht aus).
Schritt 2: Erstellen Sie eine Cloud-Funktion, um den geografischen Standort abzurufen
Kopieren Sie diese Grundfunktion in den Code-Editor von index.js :
const cors = require('cors')
function _geolocation(req, res) {
const data = {
country_code: req.headers["x-appengine-country"],
region: req.headers["x-appengine-region"],
city: req.headers["x-appengine-city"],
cityLatLong: req.headers["x-appengine-citylatlong"],
userIP: req.headers["x-appengine-user-ip"]
}
res.json(data)
};
exports.geolocation = (req, res) => {
const corsHandler = cors({ origin: true })
return corsHandler(req, res, function() {
return _geolocation(req, res);
});
};
Außerdem müssen wir die package.json- Definition kopieren :
{
"name": "gfc-geolocation",
"version": "0.0.1",
"dependencies": {
"cors": "^2.8.4"
}
}
Schritt 3: Beenden Sie und erhalten Sie die URL ähnlich wie: "https://us-central1-geolocation-mods-sdde.cloudfunctions.net/geolocation"
Schritt 4: Analysieren Sie die JSON-Antwort und rufen Sie den Ländercode ab
Die Antwort sieht folgendermaßen aus:
{
"country": "IN",
"region": "kl",
"city": "kochi",
"cityLatLong": "9.9312,76.2673",
"userIP": "xx.xx.xx.xx"
}
Dank und Dank geht an den Artikel " Mittel ": Kostenlose IP-basierte Geolokalisierung mit Google Cloud-Funktionen