Я пытаюсь запустить простое приложение, которое просто отправляет текущее местоположение на сервер. Вот мои настройки:
//Client
if ("geolocation" in navigator) {
console.log("Geolocation available");
navigator.geolocation.getCurrentPosition(function(position) {
const lat = position.coords.latitude;
const lon = position.coords.longitude;
document.getElementById("latitude-span").textContent = lat;
document.getElementById("longitude-span").textContent = lon;
const data = {
lat,
lon
};
console.log(data);
const options = {
method: "POST",
headers: {
"Content-Type": "application/json"
},
body: JSON.stringify(data)
};
fetch("/api", options);
});
} else {
console.log("Geolocation not vailable available");
}
//Server
const express = require( "express" );
const cors = require( "cors" );
const app = express();
app.use( cors() );
app.use( express.static( "public" ) );
app.use( express.json( {
limit: "1mb"
} ) );
app.post( "/api", cors(), ( request, response ) => {
console.log( request );
response.send()
} );
app.listen( 5500, function () {
console.log( "listening at 5500" );
} );
Как видите, я использую express в проекте NodeJs, я только начинаю это приключение js back-end и не могу понять это вне. Я всегда получаю эту ошибку: POST http://127.0.0.1:5500/api net::ERR_ABORTED 405 (Method Not Allowed)
(anonymous) @ scripts.js:23
Может ли кто-нибудь мне помочь? Я искал похожий вопрос и, похоже, не могу их найти.