Ionic/Angular以file:// in of post and put -tating 403禁止API的错误



我正在使用Ionic 3/Angular Android应用程序。Ionic正在将HTTP标头源以file://for post和put http呼叫的方法发送。它不会添加来获得方法。

我使用的lib是'@angular/http'。

我们对API侧有严格的限制。我们无法修改。

任何人都可以建议解决方案吗?

以下是HTTP标头的片段

    content-type:application/json
    Host:XXXXXXX
    Origin:file://
    User-Agent:Mozilla/5.0 (Linux; Android 7.1.1; Android SDK built 
    for x86 Build/NYC; wv) AppleWebKit/537.36 (KHTML, like Gecko) 
    Version/4.0 Chrome/55.0.2883.91 Mobile Safari/537.36
    X-DevTools-Emulate-Network-Conditions-Client-Id:XXXXX
    X-Requested-With:com.X.X.X

我还查看了以下帖子和论坛。没有运气

https://forum.ionicframework.com/t/native-app-is-sender-header-origin-file-file-file-which-causes-problems/62388

所以链接,但没有解决方案。

离子本机应用程序正在发送标题来源:file://引起问题

我不确定这是否会解决您的问题,但是我记得在我制作离子App时遇到这个问题。看我如何设置应用程序,看来我使用代理在本地进行HTTP调用。我在根目录中有一个名为 ionic.config.json的文件,该文件如下:

{
  "name": "mobile",
  "app_id": "",
  "type": "ionic-angular",
  "proxies": [
    {
      "path": "/api",
      "proxyUrl": "http://your-local-api-address"
    }
  ]
}

然后在文件中用于存储API信息的文件中,我的URL只是设置为"/api"。肯定有一个解决方案,但可能是您正在尝试做Ionic无法(很容易?)的事情。.就像在试图在本机设备上运行该应用程序时运行现场重新加载。p> Update

基本上我在上面写的东西,但发现这个人从一个说他有解决方法的人发表了这个年龄段,这是他的输入

我设法找到了一个工作解决方案! 您需要将API服务器代理到LiverEload中,以便您的Web应用程序将 认为API服务器实际上与LiverEload服务器相同。 代理配置规格在这里:https://github.com/driftyco/ionic-- CLI#高级服务 例如,如果您的API服务器在192.168.0.1:8888上,则需要添加此 到您的离子。项目:

"proxies": [
{
  "path": "/api",
  "proxyUrl": "http://192.168.0.1:8888/api"
}
]

然后,在您的应用中,您必须像 本地,直接来自/api。

这是旧线程的链接

https://github.com/ionic-team/ionic-cli/issues/89

相关内容

  • 没有找到相关文章

最新更新