gpt4 book ai didi

ios - POST http 调用在 Ionic iOS 构建中不起作用

转载 作者:行者123 更新时间:2023-11-29 05:38:39 24 4
gpt4 key购买 nike

我在 Ionic V4 中制作了一个应用程序,然后使用 cordova 插件(不是电容器)构建了相同的应用程序。我的应用程序的第一页是登录,我从表单字段获取值并将其发送到登录方法,在登录方法中我对服务器进行 POST 调用。

loginUrl = 'http://localhost:3000/login';
errorLog: any;

login(form) {
const user = form.values;
this.httpClient.post(this.loginUrl, user).subscribe( response => {
this.toastController.create({message:'Login Successful', duration: 1000}).then(toast=> toast.present());
}, error => {
this.errorLog = error;
this.toastController.create({message:'Some Error Occured', duration: 1000}).then(toast=> toast.present());
})
}

此外,我还在登录页面中打印该错误日志,因为一旦我们进行构建,就很难使用 Android Studio 或 Xcode 在设备中进行调试。

所以我像这样打印错误日志

<h3>{{errorLog | json}}</h3>

如果在网络浏览器以及 Android 中运行应用程序,我不会从 POST 调用中收到错误。当我尝试构建并使用 Xcode 部署到我的 iPad 时,iOS 出现错误。

它在 GET HTTP 调用中工作正常,因为之前我已经测试过 GET HTTP 调用,但在 POST HTTP 调用中不起作用。

它返回 500 内部服务器错误。错误对象看起来像

{
"statusText": "OK",
"status": 500,
"url": "http://localhost:3000/login",
"ok": false,
"name": 'HttpErrorResponse',
"message": "Http failure response for http://localhost:3000/login: 500 OK",
...
}

我如何进行构建

  1. ionic build --prod --release
  2. ionic cordova 平台删除 ios(如果平台已存在)。
  3. ionic cordova 平台添加 ios
  4. ionic cordova 准备 ios

然后我在 Xcode 中打开同一个 ios 文件夹,选择开发者帐户,连接我的 iPad 并运行它。

最佳答案

你能解决这个问题吗?我遇到了类似的情况,这就是我解决它的方法。在 Capacitor.config.json 文件中,我们需要指定获取 Api 数据的“服务器”。

 "appId": "com.yoursite",
"appName": "Your Site",
"bundledWebRuntime": false,
"npmClient": "npm",
"webDir": "www",
"cordova": {},

//This part mentioned below is important.
"server": {
"url": "https://yoursite.com",
"allowNavigation": ["yoursite.com", "*.yoursite.com"]
},

希望这对您有所帮助。

关于ios - POST http 调用在 Ionic iOS 构建中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56784490/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com