Mapbox Reverse Geocoding with coordinates












0















I am currently working on
reverse geocoding. I use the example that I found in the mapbox documentation. My Schema looks like this:



const mongoose = require("mongoose");

const PostSchema = new mongoose.Schema({
title: {
type: String,
required: [true, "empty field"]
},

description: {
type: String,
required: [true, "empty field"]
},
images: [String],
coordinates: Array,
comments: [
{
type: mongoose.Schema.Types.ObjectId,
ref: "Comment"
}
],
date: { type: Date, default: Date.now },
views: { type: Number, default: 0 }
});

module.exports = mongoose.model("Post", PostSchema);


Then I try to get the location from the input fields



<% include ../partials/header %>
<div class="container">
<div class="row">
<div class="col-md-6">
<form action="/blog" method="post" enctype="multipart/form-data">
<div class="form-group">
<label for="title-text">Title:</label>
<input
id="title-text"
type="text"
name="title"
class="form-control"
placeholder="title"
/>
</div>

<div class="form-group">
<label for="description-text">Description:</label>
<textarea
id="description-text"
class="form-control"
name="description"
id="textField"
cols="30"
rows="10"
placeholder="description"
></textarea>
</div>

<div class="form-group">
<label for="location-text">Address:</label>
<input
id="location-text geocoder"
class="form-control geocoder"
type="text"
name="address"
placeholder="1234 Main St"
/>
</div>
<div class="form-row">
<div class="from-group col-md-6">
<label for="inputCity">City</label>
<input type="text" name='city' class="form-control" id="inputCity">
</div>
<div class="form-group col-md-4">
<label for="inputState">State</label>
<select id="inputState" name='region' class="form-control">
<option selected>Choose...</option>
<option value="AL">Alabama</option>
<option value="AK">Alaska</option>
<option value="AZ">Arizona</option>
<option value="AR">Arkansas</option>
<option value="CA">California</option>
<option value="CO">Colorado</option>
<option value="CT">Connecticut</option>
<option value="DE">Delaware</option>
<option value="FL">Florida</option>
<option value="GA">Georgia</option>
<option value="HI">Hawaii</option>
<option value="ID">Idaho</option>
<option value="IL">Illinois</option>
<option value="IN">Indiana</option>
<option value="IA">Iowa</option>
<option value="KS">Kansas</option>
<option value="KY">Kentucky</option>
<option value="LA">Louisiana</option>
<option value="ME">Maine</option>
<option value="MD">Maryland</option>
<option value="MA">Massachusetts</option>
<option value="MI">Michigan</option>
<option value="MN">Minnesota</option>
<option value="MS">Mississippi</option>
<option value="MO">Missouri</option>
<option value="MT">Montana</option>
<option value="NE">Nebraska</option>
<option value="NV">Nevada</option>
<option value="NH">New Hampshire</option>
<option value="NJ">New Jersey</option>
<option value="NM">New Mexico</option>
<option value="NY">New York</option>
<option value="NC">North Carolina</option>
<option value="ND">North Dakota</option>
<option value="OH">Ohio</option>
<option value="OK">Oklahoma</option>
<option value="OR">Oregon</option>
<option value="PA">Pennsylvania</option>
<option value="RI">Rhode Island</option>
<option value="SC">South Carolina</option>
<option value="SD">South Dakota</option>
<option value="TN">Tennessee</option>
<option value="TX">Texas</option>
<option value="UT">Utah</option>
<option value="VT">Vermont</option>
<option value="VA">Virginia</option>
<option value="WA">Washington</option>
<option value="WV">West Virginia</option>
<option value="WI">Wisconsin</option>
<option value="WY">Wyoming</option>
<option value="">-- CANADA --</option>
<option value="AB">Alberta</option>
<option value="BC">British Columbia</option>
<option value="MB">Manitoba</option>
<option value="NB">New Brunswick</option>
<option value="NF">Newfoundland and Labrador</option>
<option value="NT">Northwest Territories</option>
<option value="NS">Nova Scotia</option>
<option value="NU">Nunavut</option>
<option value="ON">Ontario</option>
<option value="PE">Prince Edward Island</option>
<option value="PQ">Quebec</option>
<option value="SK">Saskatchewan</option>
<option value="YT">Yukon Territory</option>
</select>
</div>
<div class="form-group col-md-2">
<label for="inputZip">Zip</label>
<input type="text" name='zip_code'class="form-control" id="inputZip">
</div>
</div>

<div class="form-group input-file-container">
<label for="my-file" class="input-file-trigger" tabindex="0"
>Select a images...</label
>
<input
id="my-file"
class="form-control-file input-file"
type="file"
name="images"
multiple="multiple"
required
/>
</div>

<div class="form-group">
<button class="btn btn-lg btn-primary btn-block" >Submit</button>
</div>
</form>
</div>
</div>
</div>

<a href="/blog">back...</a>




<% include ../partials/footer %>
</div>


My code on the backend looks like this:



let title = req.body.title;
let description = req.body.description;
let content = req.body.content;
let address = req.body.address;
let city = req.body.city;
let zip = req.body.zip_code;
let region = req.body.region;

geocodingClient
.reverseGeocode{
query: [address, city, zip, region],
limit: 10
})
.send()
.then(response => {
const match = response.body;
const coordinates = match.features[0].geometry.coordinates;
const newPost = {
title: title,
description: description,
content: content,
images: images,
coordinates: coordinates
};

Post.create(newPost)
.then(newCreatedPost => {
if (newCreatedPost) {
res.redirect("/blog");
console.log(newPost.coordinates);
} else {
res.send("where is the post");
}
})
.catch(err => {
// req.flash("error", err.message);
// res.redirect("/blog/new");
console.error(err.message);
});
});
}


When he tries to create a new post he gets this error:



Error: query must be a string.


Has anyone already encountered such a problem and knows how to solve it. I will be grateful for every hint










share|improve this question

























  • What is geocodingClient? Can you point us to the documentation?

    – rodrigoap
    Nov 25 '18 at 15:44











  • Geocoding Client looks like this: const mbxGeocoding = require("@mapbox/mapbox-sdk/services/geocoding"); const geocodingClient = mbxGeocoding({ accessToken: process.env.map_Box_Token });

    – Bartek
    Nov 25 '18 at 16:42


















0















I am currently working on
reverse geocoding. I use the example that I found in the mapbox documentation. My Schema looks like this:



const mongoose = require("mongoose");

const PostSchema = new mongoose.Schema({
title: {
type: String,
required: [true, "empty field"]
},

description: {
type: String,
required: [true, "empty field"]
},
images: [String],
coordinates: Array,
comments: [
{
type: mongoose.Schema.Types.ObjectId,
ref: "Comment"
}
],
date: { type: Date, default: Date.now },
views: { type: Number, default: 0 }
});

module.exports = mongoose.model("Post", PostSchema);


Then I try to get the location from the input fields



<% include ../partials/header %>
<div class="container">
<div class="row">
<div class="col-md-6">
<form action="/blog" method="post" enctype="multipart/form-data">
<div class="form-group">
<label for="title-text">Title:</label>
<input
id="title-text"
type="text"
name="title"
class="form-control"
placeholder="title"
/>
</div>

<div class="form-group">
<label for="description-text">Description:</label>
<textarea
id="description-text"
class="form-control"
name="description"
id="textField"
cols="30"
rows="10"
placeholder="description"
></textarea>
</div>

<div class="form-group">
<label for="location-text">Address:</label>
<input
id="location-text geocoder"
class="form-control geocoder"
type="text"
name="address"
placeholder="1234 Main St"
/>
</div>
<div class="form-row">
<div class="from-group col-md-6">
<label for="inputCity">City</label>
<input type="text" name='city' class="form-control" id="inputCity">
</div>
<div class="form-group col-md-4">
<label for="inputState">State</label>
<select id="inputState" name='region' class="form-control">
<option selected>Choose...</option>
<option value="AL">Alabama</option>
<option value="AK">Alaska</option>
<option value="AZ">Arizona</option>
<option value="AR">Arkansas</option>
<option value="CA">California</option>
<option value="CO">Colorado</option>
<option value="CT">Connecticut</option>
<option value="DE">Delaware</option>
<option value="FL">Florida</option>
<option value="GA">Georgia</option>
<option value="HI">Hawaii</option>
<option value="ID">Idaho</option>
<option value="IL">Illinois</option>
<option value="IN">Indiana</option>
<option value="IA">Iowa</option>
<option value="KS">Kansas</option>
<option value="KY">Kentucky</option>
<option value="LA">Louisiana</option>
<option value="ME">Maine</option>
<option value="MD">Maryland</option>
<option value="MA">Massachusetts</option>
<option value="MI">Michigan</option>
<option value="MN">Minnesota</option>
<option value="MS">Mississippi</option>
<option value="MO">Missouri</option>
<option value="MT">Montana</option>
<option value="NE">Nebraska</option>
<option value="NV">Nevada</option>
<option value="NH">New Hampshire</option>
<option value="NJ">New Jersey</option>
<option value="NM">New Mexico</option>
<option value="NY">New York</option>
<option value="NC">North Carolina</option>
<option value="ND">North Dakota</option>
<option value="OH">Ohio</option>
<option value="OK">Oklahoma</option>
<option value="OR">Oregon</option>
<option value="PA">Pennsylvania</option>
<option value="RI">Rhode Island</option>
<option value="SC">South Carolina</option>
<option value="SD">South Dakota</option>
<option value="TN">Tennessee</option>
<option value="TX">Texas</option>
<option value="UT">Utah</option>
<option value="VT">Vermont</option>
<option value="VA">Virginia</option>
<option value="WA">Washington</option>
<option value="WV">West Virginia</option>
<option value="WI">Wisconsin</option>
<option value="WY">Wyoming</option>
<option value="">-- CANADA --</option>
<option value="AB">Alberta</option>
<option value="BC">British Columbia</option>
<option value="MB">Manitoba</option>
<option value="NB">New Brunswick</option>
<option value="NF">Newfoundland and Labrador</option>
<option value="NT">Northwest Territories</option>
<option value="NS">Nova Scotia</option>
<option value="NU">Nunavut</option>
<option value="ON">Ontario</option>
<option value="PE">Prince Edward Island</option>
<option value="PQ">Quebec</option>
<option value="SK">Saskatchewan</option>
<option value="YT">Yukon Territory</option>
</select>
</div>
<div class="form-group col-md-2">
<label for="inputZip">Zip</label>
<input type="text" name='zip_code'class="form-control" id="inputZip">
</div>
</div>

<div class="form-group input-file-container">
<label for="my-file" class="input-file-trigger" tabindex="0"
>Select a images...</label
>
<input
id="my-file"
class="form-control-file input-file"
type="file"
name="images"
multiple="multiple"
required
/>
</div>

<div class="form-group">
<button class="btn btn-lg btn-primary btn-block" >Submit</button>
</div>
</form>
</div>
</div>
</div>

<a href="/blog">back...</a>




<% include ../partials/footer %>
</div>


My code on the backend looks like this:



let title = req.body.title;
let description = req.body.description;
let content = req.body.content;
let address = req.body.address;
let city = req.body.city;
let zip = req.body.zip_code;
let region = req.body.region;

geocodingClient
.reverseGeocode{
query: [address, city, zip, region],
limit: 10
})
.send()
.then(response => {
const match = response.body;
const coordinates = match.features[0].geometry.coordinates;
const newPost = {
title: title,
description: description,
content: content,
images: images,
coordinates: coordinates
};

Post.create(newPost)
.then(newCreatedPost => {
if (newCreatedPost) {
res.redirect("/blog");
console.log(newPost.coordinates);
} else {
res.send("where is the post");
}
})
.catch(err => {
// req.flash("error", err.message);
// res.redirect("/blog/new");
console.error(err.message);
});
});
}


When he tries to create a new post he gets this error:



Error: query must be a string.


Has anyone already encountered such a problem and knows how to solve it. I will be grateful for every hint










share|improve this question

























  • What is geocodingClient? Can you point us to the documentation?

    – rodrigoap
    Nov 25 '18 at 15:44











  • Geocoding Client looks like this: const mbxGeocoding = require("@mapbox/mapbox-sdk/services/geocoding"); const geocodingClient = mbxGeocoding({ accessToken: process.env.map_Box_Token });

    – Bartek
    Nov 25 '18 at 16:42
















0












0








0








I am currently working on
reverse geocoding. I use the example that I found in the mapbox documentation. My Schema looks like this:



const mongoose = require("mongoose");

const PostSchema = new mongoose.Schema({
title: {
type: String,
required: [true, "empty field"]
},

description: {
type: String,
required: [true, "empty field"]
},
images: [String],
coordinates: Array,
comments: [
{
type: mongoose.Schema.Types.ObjectId,
ref: "Comment"
}
],
date: { type: Date, default: Date.now },
views: { type: Number, default: 0 }
});

module.exports = mongoose.model("Post", PostSchema);


Then I try to get the location from the input fields



<% include ../partials/header %>
<div class="container">
<div class="row">
<div class="col-md-6">
<form action="/blog" method="post" enctype="multipart/form-data">
<div class="form-group">
<label for="title-text">Title:</label>
<input
id="title-text"
type="text"
name="title"
class="form-control"
placeholder="title"
/>
</div>

<div class="form-group">
<label for="description-text">Description:</label>
<textarea
id="description-text"
class="form-control"
name="description"
id="textField"
cols="30"
rows="10"
placeholder="description"
></textarea>
</div>

<div class="form-group">
<label for="location-text">Address:</label>
<input
id="location-text geocoder"
class="form-control geocoder"
type="text"
name="address"
placeholder="1234 Main St"
/>
</div>
<div class="form-row">
<div class="from-group col-md-6">
<label for="inputCity">City</label>
<input type="text" name='city' class="form-control" id="inputCity">
</div>
<div class="form-group col-md-4">
<label for="inputState">State</label>
<select id="inputState" name='region' class="form-control">
<option selected>Choose...</option>
<option value="AL">Alabama</option>
<option value="AK">Alaska</option>
<option value="AZ">Arizona</option>
<option value="AR">Arkansas</option>
<option value="CA">California</option>
<option value="CO">Colorado</option>
<option value="CT">Connecticut</option>
<option value="DE">Delaware</option>
<option value="FL">Florida</option>
<option value="GA">Georgia</option>
<option value="HI">Hawaii</option>
<option value="ID">Idaho</option>
<option value="IL">Illinois</option>
<option value="IN">Indiana</option>
<option value="IA">Iowa</option>
<option value="KS">Kansas</option>
<option value="KY">Kentucky</option>
<option value="LA">Louisiana</option>
<option value="ME">Maine</option>
<option value="MD">Maryland</option>
<option value="MA">Massachusetts</option>
<option value="MI">Michigan</option>
<option value="MN">Minnesota</option>
<option value="MS">Mississippi</option>
<option value="MO">Missouri</option>
<option value="MT">Montana</option>
<option value="NE">Nebraska</option>
<option value="NV">Nevada</option>
<option value="NH">New Hampshire</option>
<option value="NJ">New Jersey</option>
<option value="NM">New Mexico</option>
<option value="NY">New York</option>
<option value="NC">North Carolina</option>
<option value="ND">North Dakota</option>
<option value="OH">Ohio</option>
<option value="OK">Oklahoma</option>
<option value="OR">Oregon</option>
<option value="PA">Pennsylvania</option>
<option value="RI">Rhode Island</option>
<option value="SC">South Carolina</option>
<option value="SD">South Dakota</option>
<option value="TN">Tennessee</option>
<option value="TX">Texas</option>
<option value="UT">Utah</option>
<option value="VT">Vermont</option>
<option value="VA">Virginia</option>
<option value="WA">Washington</option>
<option value="WV">West Virginia</option>
<option value="WI">Wisconsin</option>
<option value="WY">Wyoming</option>
<option value="">-- CANADA --</option>
<option value="AB">Alberta</option>
<option value="BC">British Columbia</option>
<option value="MB">Manitoba</option>
<option value="NB">New Brunswick</option>
<option value="NF">Newfoundland and Labrador</option>
<option value="NT">Northwest Territories</option>
<option value="NS">Nova Scotia</option>
<option value="NU">Nunavut</option>
<option value="ON">Ontario</option>
<option value="PE">Prince Edward Island</option>
<option value="PQ">Quebec</option>
<option value="SK">Saskatchewan</option>
<option value="YT">Yukon Territory</option>
</select>
</div>
<div class="form-group col-md-2">
<label for="inputZip">Zip</label>
<input type="text" name='zip_code'class="form-control" id="inputZip">
</div>
</div>

<div class="form-group input-file-container">
<label for="my-file" class="input-file-trigger" tabindex="0"
>Select a images...</label
>
<input
id="my-file"
class="form-control-file input-file"
type="file"
name="images"
multiple="multiple"
required
/>
</div>

<div class="form-group">
<button class="btn btn-lg btn-primary btn-block" >Submit</button>
</div>
</form>
</div>
</div>
</div>

<a href="/blog">back...</a>




<% include ../partials/footer %>
</div>


My code on the backend looks like this:



let title = req.body.title;
let description = req.body.description;
let content = req.body.content;
let address = req.body.address;
let city = req.body.city;
let zip = req.body.zip_code;
let region = req.body.region;

geocodingClient
.reverseGeocode{
query: [address, city, zip, region],
limit: 10
})
.send()
.then(response => {
const match = response.body;
const coordinates = match.features[0].geometry.coordinates;
const newPost = {
title: title,
description: description,
content: content,
images: images,
coordinates: coordinates
};

Post.create(newPost)
.then(newCreatedPost => {
if (newCreatedPost) {
res.redirect("/blog");
console.log(newPost.coordinates);
} else {
res.send("where is the post");
}
})
.catch(err => {
// req.flash("error", err.message);
// res.redirect("/blog/new");
console.error(err.message);
});
});
}


When he tries to create a new post he gets this error:



Error: query must be a string.


Has anyone already encountered such a problem and knows how to solve it. I will be grateful for every hint










share|improve this question
















I am currently working on
reverse geocoding. I use the example that I found in the mapbox documentation. My Schema looks like this:



const mongoose = require("mongoose");

const PostSchema = new mongoose.Schema({
title: {
type: String,
required: [true, "empty field"]
},

description: {
type: String,
required: [true, "empty field"]
},
images: [String],
coordinates: Array,
comments: [
{
type: mongoose.Schema.Types.ObjectId,
ref: "Comment"
}
],
date: { type: Date, default: Date.now },
views: { type: Number, default: 0 }
});

module.exports = mongoose.model("Post", PostSchema);


Then I try to get the location from the input fields



<% include ../partials/header %>
<div class="container">
<div class="row">
<div class="col-md-6">
<form action="/blog" method="post" enctype="multipart/form-data">
<div class="form-group">
<label for="title-text">Title:</label>
<input
id="title-text"
type="text"
name="title"
class="form-control"
placeholder="title"
/>
</div>

<div class="form-group">
<label for="description-text">Description:</label>
<textarea
id="description-text"
class="form-control"
name="description"
id="textField"
cols="30"
rows="10"
placeholder="description"
></textarea>
</div>

<div class="form-group">
<label for="location-text">Address:</label>
<input
id="location-text geocoder"
class="form-control geocoder"
type="text"
name="address"
placeholder="1234 Main St"
/>
</div>
<div class="form-row">
<div class="from-group col-md-6">
<label for="inputCity">City</label>
<input type="text" name='city' class="form-control" id="inputCity">
</div>
<div class="form-group col-md-4">
<label for="inputState">State</label>
<select id="inputState" name='region' class="form-control">
<option selected>Choose...</option>
<option value="AL">Alabama</option>
<option value="AK">Alaska</option>
<option value="AZ">Arizona</option>
<option value="AR">Arkansas</option>
<option value="CA">California</option>
<option value="CO">Colorado</option>
<option value="CT">Connecticut</option>
<option value="DE">Delaware</option>
<option value="FL">Florida</option>
<option value="GA">Georgia</option>
<option value="HI">Hawaii</option>
<option value="ID">Idaho</option>
<option value="IL">Illinois</option>
<option value="IN">Indiana</option>
<option value="IA">Iowa</option>
<option value="KS">Kansas</option>
<option value="KY">Kentucky</option>
<option value="LA">Louisiana</option>
<option value="ME">Maine</option>
<option value="MD">Maryland</option>
<option value="MA">Massachusetts</option>
<option value="MI">Michigan</option>
<option value="MN">Minnesota</option>
<option value="MS">Mississippi</option>
<option value="MO">Missouri</option>
<option value="MT">Montana</option>
<option value="NE">Nebraska</option>
<option value="NV">Nevada</option>
<option value="NH">New Hampshire</option>
<option value="NJ">New Jersey</option>
<option value="NM">New Mexico</option>
<option value="NY">New York</option>
<option value="NC">North Carolina</option>
<option value="ND">North Dakota</option>
<option value="OH">Ohio</option>
<option value="OK">Oklahoma</option>
<option value="OR">Oregon</option>
<option value="PA">Pennsylvania</option>
<option value="RI">Rhode Island</option>
<option value="SC">South Carolina</option>
<option value="SD">South Dakota</option>
<option value="TN">Tennessee</option>
<option value="TX">Texas</option>
<option value="UT">Utah</option>
<option value="VT">Vermont</option>
<option value="VA">Virginia</option>
<option value="WA">Washington</option>
<option value="WV">West Virginia</option>
<option value="WI">Wisconsin</option>
<option value="WY">Wyoming</option>
<option value="">-- CANADA --</option>
<option value="AB">Alberta</option>
<option value="BC">British Columbia</option>
<option value="MB">Manitoba</option>
<option value="NB">New Brunswick</option>
<option value="NF">Newfoundland and Labrador</option>
<option value="NT">Northwest Territories</option>
<option value="NS">Nova Scotia</option>
<option value="NU">Nunavut</option>
<option value="ON">Ontario</option>
<option value="PE">Prince Edward Island</option>
<option value="PQ">Quebec</option>
<option value="SK">Saskatchewan</option>
<option value="YT">Yukon Territory</option>
</select>
</div>
<div class="form-group col-md-2">
<label for="inputZip">Zip</label>
<input type="text" name='zip_code'class="form-control" id="inputZip">
</div>
</div>

<div class="form-group input-file-container">
<label for="my-file" class="input-file-trigger" tabindex="0"
>Select a images...</label
>
<input
id="my-file"
class="form-control-file input-file"
type="file"
name="images"
multiple="multiple"
required
/>
</div>

<div class="form-group">
<button class="btn btn-lg btn-primary btn-block" >Submit</button>
</div>
</form>
</div>
</div>
</div>

<a href="/blog">back...</a>




<% include ../partials/footer %>
</div>


My code on the backend looks like this:



let title = req.body.title;
let description = req.body.description;
let content = req.body.content;
let address = req.body.address;
let city = req.body.city;
let zip = req.body.zip_code;
let region = req.body.region;

geocodingClient
.reverseGeocode{
query: [address, city, zip, region],
limit: 10
})
.send()
.then(response => {
const match = response.body;
const coordinates = match.features[0].geometry.coordinates;
const newPost = {
title: title,
description: description,
content: content,
images: images,
coordinates: coordinates
};

Post.create(newPost)
.then(newCreatedPost => {
if (newCreatedPost) {
res.redirect("/blog");
console.log(newPost.coordinates);
} else {
res.send("where is the post");
}
})
.catch(err => {
// req.flash("error", err.message);
// res.redirect("/blog/new");
console.error(err.message);
});
});
}


When he tries to create a new post he gets this error:



Error: query must be a string.


Has anyone already encountered such a problem and knows how to solve it. I will be grateful for every hint







node.js mongodb express






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Nov 25 '18 at 15:34







Bartek

















asked Nov 25 '18 at 14:41









BartekBartek

13




13













  • What is geocodingClient? Can you point us to the documentation?

    – rodrigoap
    Nov 25 '18 at 15:44











  • Geocoding Client looks like this: const mbxGeocoding = require("@mapbox/mapbox-sdk/services/geocoding"); const geocodingClient = mbxGeocoding({ accessToken: process.env.map_Box_Token });

    – Bartek
    Nov 25 '18 at 16:42





















  • What is geocodingClient? Can you point us to the documentation?

    – rodrigoap
    Nov 25 '18 at 15:44











  • Geocoding Client looks like this: const mbxGeocoding = require("@mapbox/mapbox-sdk/services/geocoding"); const geocodingClient = mbxGeocoding({ accessToken: process.env.map_Box_Token });

    – Bartek
    Nov 25 '18 at 16:42



















What is geocodingClient? Can you point us to the documentation?

– rodrigoap
Nov 25 '18 at 15:44





What is geocodingClient? Can you point us to the documentation?

– rodrigoap
Nov 25 '18 at 15:44













Geocoding Client looks like this: const mbxGeocoding = require("@mapbox/mapbox-sdk/services/geocoding"); const geocodingClient = mbxGeocoding({ accessToken: process.env.map_Box_Token });

– Bartek
Nov 25 '18 at 16:42







Geocoding Client looks like this: const mbxGeocoding = require("@mapbox/mapbox-sdk/services/geocoding"); const geocodingClient = mbxGeocoding({ accessToken: process.env.map_Box_Token });

– Bartek
Nov 25 '18 at 16:42














1 Answer
1






active

oldest

votes


















0














Reverse geocoding is about transforming (lat, long) coordinates to features. Your code is calling the reverseGeocoding API but is passing normal geocoding (address) information. This reverse geocoding worked for me:



geocodingClient
.reverseGeocode({
query: [-58.5003038, -34.5741957]
})
.send()
.then(response => {
const match = response.body;
console.log(response);
})
.catch(err => {
console.error(err.message);
});





share|improve this answer
























  • Now I understand. In my opinion it was to receive full address that's why I tried reverse geocoding. I think I should take the whole address from response.body.

    – Bartek
    Nov 26 '18 at 0:17











Your Answer






StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");

StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});

function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});


}
});














draft saved

draft discarded


















StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53468613%2fmapbox-reverse-geocoding-with-coordinates%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown

























1 Answer
1






active

oldest

votes








1 Answer
1






active

oldest

votes









active

oldest

votes






active

oldest

votes









0














Reverse geocoding is about transforming (lat, long) coordinates to features. Your code is calling the reverseGeocoding API but is passing normal geocoding (address) information. This reverse geocoding worked for me:



geocodingClient
.reverseGeocode({
query: [-58.5003038, -34.5741957]
})
.send()
.then(response => {
const match = response.body;
console.log(response);
})
.catch(err => {
console.error(err.message);
});





share|improve this answer
























  • Now I understand. In my opinion it was to receive full address that's why I tried reverse geocoding. I think I should take the whole address from response.body.

    – Bartek
    Nov 26 '18 at 0:17
















0














Reverse geocoding is about transforming (lat, long) coordinates to features. Your code is calling the reverseGeocoding API but is passing normal geocoding (address) information. This reverse geocoding worked for me:



geocodingClient
.reverseGeocode({
query: [-58.5003038, -34.5741957]
})
.send()
.then(response => {
const match = response.body;
console.log(response);
})
.catch(err => {
console.error(err.message);
});





share|improve this answer
























  • Now I understand. In my opinion it was to receive full address that's why I tried reverse geocoding. I think I should take the whole address from response.body.

    – Bartek
    Nov 26 '18 at 0:17














0












0








0







Reverse geocoding is about transforming (lat, long) coordinates to features. Your code is calling the reverseGeocoding API but is passing normal geocoding (address) information. This reverse geocoding worked for me:



geocodingClient
.reverseGeocode({
query: [-58.5003038, -34.5741957]
})
.send()
.then(response => {
const match = response.body;
console.log(response);
})
.catch(err => {
console.error(err.message);
});





share|improve this answer













Reverse geocoding is about transforming (lat, long) coordinates to features. Your code is calling the reverseGeocoding API but is passing normal geocoding (address) information. This reverse geocoding worked for me:



geocodingClient
.reverseGeocode({
query: [-58.5003038, -34.5741957]
})
.send()
.then(response => {
const match = response.body;
console.log(response);
})
.catch(err => {
console.error(err.message);
});






share|improve this answer












share|improve this answer



share|improve this answer










answered Nov 25 '18 at 19:43









rodrigoaprodrigoap

6,7022845




6,7022845













  • Now I understand. In my opinion it was to receive full address that's why I tried reverse geocoding. I think I should take the whole address from response.body.

    – Bartek
    Nov 26 '18 at 0:17



















  • Now I understand. In my opinion it was to receive full address that's why I tried reverse geocoding. I think I should take the whole address from response.body.

    – Bartek
    Nov 26 '18 at 0:17

















Now I understand. In my opinion it was to receive full address that's why I tried reverse geocoding. I think I should take the whole address from response.body.

– Bartek
Nov 26 '18 at 0:17





Now I understand. In my opinion it was to receive full address that's why I tried reverse geocoding. I think I should take the whole address from response.body.

– Bartek
Nov 26 '18 at 0:17




















draft saved

draft discarded




















































Thanks for contributing an answer to Stack Overflow!


  • Please be sure to answer the question. Provide details and share your research!

But avoid



  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.


To learn more, see our tips on writing great answers.




draft saved


draft discarded














StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53468613%2fmapbox-reverse-geocoding-with-coordinates%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







Popular posts from this blog

Futebolista

Feedback on college project

Albești (Vaslui)