离子电容器-使用Cordova插件

时间:2019-03-23 13:22:48

标签: angular cordova ionic-framework capacitor

我试图在iOS和Web上使用@ionic-native/http,但没有成功。应用程序可在两个平台上启动,但该插件无法正常工作。

依赖项

  • 电容器:“ ^ 1.0.0-beta.19”
  • @ ionic / angular:“ ^ 4.1.0”
  • @angular:“ ^ 7.2.2”
  • @ ionic-native:“ ^ 5.0.0”
  • @ ionic / angular-toolkit:“〜1.4.0”

我希望能涵盖最重要的内容。

复制步骤

应用

  1. ionic start myApp tabs
  2. npm install --save @capacitor/cli @capacitor/core
  3. npm run build --prod
  4. npx cap init <name> <id>
  5. npx cap add ios
  6. npx cap copy
  7. npx cap open ios
    • 一般->签名->团队

插件

  1. npm install cordova-plugin-advanced-http
  2. npm install @ionic-native/http
  3. npx cap sync
  4. here
  5. 所示使用它

应该是documentation(我可能会误解)。

问题

尝试调用API时:

网络

Native: tried calling HTTP.get, but Cordova is not available. Make sure to include cordova.js or run in a device/simulator

我知道我本身并没有使用Cordova,但是npx cap sync是否应该覆盖它?

iOS

[error] - ERROR {"line":38,"column":38,"sourceURL":"capacitor://localhost/tab2-tab2-module.js"}

1 个答案:

答案 0 :(得分:0)

我很幸运终于找到了更多信息。

iOS

我不确定为什么,但是这个附加插件对https://github.com/sneas/ionic-native-http-connection-backend有所帮助。可以通过HttpClient发出请求,并且它们使用Cordova插件,从而绕过代理。

网络

根据https://github.com/ionic-team/capacitor/issues/767#issuecomment-415481452

,电容器无法在浏览器中工作

所以我认为那是错误的。前面提到的plugin将通过HttpClient委派请求,因此尽管无法解决CORS问题,但对于浏览器而言,这是一个不错的解决方法。

  

此时proxy可以解决CORS问题。