javascript - 获取位置的简单发布请求

标签 javascript angular express

我正在尝试获取用户的位置并将其发送到我的服务器,以便进行一些 API 调用。我得到了用户的当前位置,这很好,但它没有发布到服务器,我不知道为什么。你能看看我的代码并帮我弄清楚吗。

后端

index.routes.js

router.post('/currentLatLong', ctrlEvent.currentLatLong);

event.controller.js

module.exports.currentLatLong = (req, res) => {
  console.log('recieved');
  this.currentLoc = req.body;
  console.log('this.currentLoc', this.currentLoc);
}

前端

服务

    constructor(private data: DataService, private http: HttpClient) { }

    getUserLocation() {
    /* locate the User */
    if (navigator.geolocation) {
      navigator.geolocation.getCurrentPosition(position => {
        this.currentLat = position.coords.latitude;
        this.currentLng = position.coords.longitude;
        console.log('position.coords.latitude', this.currentLat);
        this.data.latitudeSource.next(this.currentLat);
        this.data.longitudeSource.next(this.currentLng);
        const currentLatLong = {
          latitude: this.currentLat,
          longitude: this.currentLng
        };
        console.log('currentLatLong', currentLatLong);
        return this.http.post(environment.apiBaseUrl + '/currentLatLong', 
        currentLatLong);
      }, err => {
        console.log(err);
        return false;
      });
      } else {
      console.log('bad');
      return false;
      }
    }

最佳答案

在angular端,需要调用subscribe()方法。调用 subscribe() 方法执行可观察对象,这是发起请求的原因。

this.http.post(environment.apiBaseUrl + '/currentLatLong', currentLatLong)
    .subscribe(
      res => {
        console.log(res);
      },
      err => {
        console.log(err);
      }
    );

在您对该方法返回的可观察对象调用 subscribe() 之前,HttpClient 方法不会开始其 HTTP 请求。

关于javascript - 获取位置的简单发布请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59459961/

相关文章:

javascript - 所选选项的值与初始值的总和

Angular 组件 : Can I use an Observable instead EventEmitter as @Output() property?

Angular 2 - 如何有条件地向我的组件添加样式?

concatenation - Express.js 是否有任何静态 JS 连接/缩小模块?

javascript - NodeJS Express - 无法获取路由

javascript - 避免nodeJs中的回调 hell /将变量传递给内部函数

javascript - 我的 Javascript 图像预加载器代码有问题

javascript - 蓝色到灰色 CSS 颜色在 javascript 中计算

javascript - 如何在jquery中获取动态创建的文本框的动态ID

javascript - 单击“喜欢”按钮时,它应该显示特定数据吗?