升级到WKWebview后,Ionic 3 Google Maps问题

时间:2017-10-29 15:46:26

标签: google-maps ionic-framework wkwebview

我正在研究Ionic 3,使用iPhone 7 plus和iOS 11进行测试,我刚刚更新到WKWebview,现在我的Google Maps离子原生插件出现了问题。这是我在设备上测试时遇到的错误:

  

ClientParametersRequest失败,剩余7次尝试(0对10)。错误域= com.google.HTTPStatus代码= 400“(null)”UserInfo = {data =< 3c44d ...........>}`

我不是百分百肯定,但我认为这是CORS的一些问题,现在需要WKWebview。

我已经在一些地方读过您可以通过代理绕过它,方法是在ionic.config.json文件中添加以下内容:

```
  "proxies": [
    {
      "path": "http://localhost:8080",
      "proxyUrl": "https://maps.googleapis.com"
    }
  ],
```

但它不起作用,我不确定我是否有路径和proxyURL正确。

更新:

所以,现在我们知道它不是关于CORS,因为它是一个不好的请求400,所以我发送的数据很糟糕,正如旁观者的评论中正确注意到的那样。我已经测试了代码,它在第2行的JS代码中失败了,我尝试订阅这个事件。

 mapMoveSubscribe() {
    this.map.addEventListener(GoogleMapsEvent.CAMERA_IDLE).subscribe(() => {   
      this.map.getCameraPosition().then((cameraPosition) => {
        this.temp = JSON.stringify(cameraPosition.target);
        this.temp2 = JSON.parse(this.temp);
        this.currentLatitude = this.temp2.lat;
        this.currentLongitude = this.temp2.lng;
        this.nativeGeocoder.reverseGeocode(this.currentLatitude ? this.currentLatitude : 0, this.currentLongitude ? this.currentLongitude : 0).then((result: NativeGeocoderReverseResult) => {
          this.locationObject = (result.thoroughfare ? result.thoroughfare + ' ' : '') + (result.subThoroughfare ? result.subThoroughfare + ', ' : '') + (result.locality == result.administrativeArea ? '' : result.locality + ', ') + (result.administrativeArea ? result.administrativeArea + ' ' : '') + (result.postalCode ? result.postalCode + ', ' : '') + (result.countryName ? result.countryName : '');

          this.geoObject = result;
        }).catch((error: any) => console.log(error));
      });
    });
  }

0 个答案:

没有答案