问题标签 [cordova-plugin-advanced-http]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1981 浏览

ios - XML API调用不适用于ionic3中的cordova-plugin-advanced-http最新版本

我正在使用cordova-plugin-advanced-http插件进行 API 调用,所有JSON启用的 API 都可以正常工作,但是我有一个XML嵌入式 API,它在 Postman 中工作正常,但是当我从 ionic 调用它时,它的参数没有到达服务器端。

下面是我的 XML API 代码:

类型 1:

类型 2:

它一直在从服务器抛出错误并且使用相同的请求,我能够在邮递员和本机 iOS 代码中获取数据。

我在 GitHub 上提到了这个问题,但仍然没有成功。

尽管无法在服务器上获取数据,但我缺少一些东西。

帮我解决这个问题。

0 投票
3 回答
4041 浏览

ios - 如何在 ionic 3 中停止缓存我的 HTTP 请求和响应

我想停止缓存native-http插件存储其缓存的 API 请求和响应以及它与我的应用程序的创建问题。

All-time API 工作正常,但是当我从服务器收到 404 或 401 错误时,它会将其缓存在我的应用程序中,然后始终会收到状态为 1 的超时错误。

为了克服这个问题,我需要卸载应用程序并重新安装它才能按预期工作。

任何想法如何停止缓存 HTTP 请求和响应?

或者如何解决状态为 1 的超时问题?

我在请求标头中尝试了以下内容,但仍然没有成功。

还在我的请求中添加了一个虚拟的唯一参数,以发出我的 API 调用的唯一请求,如下所示。

有人在 Ionic 3 中遇到过这种问题吗?

尝试了这个线程建议,但一点运气都没有。

为这个问题提出任何解决方案。

编辑:

完整请求代码:

0 投票
0 回答
363 浏览

ios - iOS:无法在 cordova-plugin-advanced-http 中使用固定证书模式

我正在将 Cordova-plugin-advanced-http v2.0.1 插件用于“固定”证书模式以启用 SSL 固定。对于 Cordova 应用程序,相同的代码在 android 中有效,但在 iOS 中无效。

我使用了一个无效的证书,因此它在 Android 中给出错误,但在 iOS 中没有。

}

0 投票
1 回答
2151 浏览

ionic4 - Ionic-native HTTP POST 方法在 iOS 上不起作用(但在 Android 上完美运行)

我在我的 Ionic 4 项目中使用 @ionic-native/http 通过 POST 方法发送带有 UserId 和 Password 的正文和带有 'Content-Type': 'application/json' 的标头来登录用户。它在 android 中运行良好,但在 iOS 上它以 http 400 错误响应。

我厌倦了使用@angular/http,但它在浏览器、android 和 iOS 上给出了 CORS 错误。而且我无法更改服务器端代码以启用 CORS。

代码:

StatusCode 200 的预期结果响应

StatusCode 400 的实际结果响应

0 投票
1 回答
3514 浏览

cordova-plugins - 具有多个标头的 Ionic 4 本机 http POST

这是我从 Ionic 应用程序中发布 http 帖子的方式:

根据此处的文档 - https://www.npmjs.com/package/cordova-plugin-advanced-http#post,标头应该像这样发送:

标题:{“内容长度”:“247”}

这对我不起作用。请注意我如何将标头键和值作为一个字符串发送:

标头:“内容类型:应用程序/json;charset=utf-8”

这是错误 -

错误:高级 http:标头值必须是 Object.sendRequest(public-interface.js)的 Object.handleMissingOptions(helpers.js:309)的 checkHeadersObject(helpers.js:192)的 checkKeyValuePairObject(helpers.js:88)的字符串:143) 在 Object.post (public-interface.js:167) 在 callCordovaPlugin (vendor.js:76774) 在 vendor.js:76589 在 vendor.js:76547 在新 ZoneAwarePromise (polyfills.js:3268) 在 tryNativePromise (供应商.js:76546)

尝试发送多个标头时出现相同的错误。我不知道为什么会发生这种情况 - 文档中的示例不起作用!我错过了什么?

编辑:web.config

0 投票
1 回答
272 浏览

ionic4 - 添加“cordova-plugin-advanced-http”后,“ionic cordova run android”开始报错

ionic cordova run/build android 工作正常,直到我添加了插件cordova-plugin-advanced-http,错误如下:

发生未处理的异常:D:\Projects\MyApp\myAppTest\www\plugins\cordova-plugin-advanced-http\www\helpers.js: Unexpected reserved word 'interface' (9:6)

日志文件如下所示:

在 Parser.raise (D:\Projects\MyApp\myAppTest\node_modules@babel\parser\lib\index.js:6325:17) 在 Parser.checkReservedWord (D:\Projects\MyApp\myAppTest\node_modules@babel\parser\ lib\index.js:9556:12) 在 Parser.parseIdentifierName (D:\Projects\MyApp\myAppTest\node_modules@babel\parser\lib\index.js:9525:12) 在 Parser.parseIdentifier (D:\Projects\ MyApp\myAppTest\node_modules@babel\parser\lib\index.js:9499:23) 在 Parser.parseBindingAtom (D:\Projects\MyApp\myAppTest\node_modules@babel\parser\lib\index.js:7931:17) Parser.parseVarId (D:\Projects\MyApp\myAppTest\node_modules@babel\parser\lib\index.js:10501:20) 在 Parser.parseVar (D:\Projects\MyApp\myAppTest\node_modules@babel\parser\ lib\index.js:10477:12) 在 Parser.parseVarStatement (D:\Projects\MyApp\myAppTest\node_modules@babel\parser\lib\index.js:10299:10) 在 Parser。parseStatementContent (D:\Projects\MyApp\myAppTest\node_modules@babel\parser\lib\index.js:9896:21) 在 Parser.parseStatement (D:\Projects\MyApp\myAppTest\node_modules@babel\parser\lib\index .js:9829:17) 在 Parser.parseBlockBody (D:\Projects\MyApp\myAppTest\node_modules@babel\parser\lib\index.js:10405:25) 在 Parser.parseBlockBody (D:\Projects\MyApp\myAppTest \node_modules@babel\parser\lib\index.js:10392:10) 在 Parser.parseBlock (D:\Projects\MyApp\myAppTest\node_modules@babel\parser\lib\index.js:10376:10) 在 Parser。 parseFunctionBody (D:\Projects\MyApp\myAppTest\node_modules@babel\parser\lib\index.js:9424:24) 在 Parser.parseFunctionBodyAndFinish (D:\Projects\MyApp\myAppTest\node_modules@babel\parser\lib\index .js:9394:10) 在 withTopicForbiddingContext (D:\Projects\MyApp\myAppTest\node_modules@babel\parser\lib\index.js:10535:12)

我在指定位置看到了 helper.js 文件,它实际上包含导致问题的单词 interface,因为 interface 是保留字。

我已经尝试了所有的方法,包括删除node_modules并重新安装它们,在运行构建命令之前我已经删除了插件平台文件夹,但这些都不适合我。

一旦我删除了cordova-plugin-advanced-http插件,ionic cordova run/build就会开始正确构建项目

0 投票
1 回答
355 浏览

ios - 第三方 URL 未登录 Ionic iOS 中的帐户

我正在使用 Cordova Plugin Advance HTTP 从我的服务器获取用户令牌,然后从该令牌创建一个 url 以让我当前的用户登录到他的帐户配置文件。我的代码如下:

teetime.page.ts

teetimes.page.html

ios控制台日志

[Log] Member Token: 4PHZjQUkGETmF4M9lm7TppjoMhwqHudyhjRGZmyBxY7gCTEgazGIKWekRRLo (cordova.98fc7fcb7c020c1504f6.js, line 1) [Log] Login URL: https://www.example.com/WebRes/Club/MyClub/LoginWithToken/4PHZjQUkGETmF4M9lm7TppjoMhwqHudyhjRGZmyBxY7gCTEgazGIKWekRRLo (cordova.98fc7fcb7c020c1504f6.js, line 1)

我能够成功地从我的服务器获取令牌并且能够成功地形成 URL 但这里的问题是这个带有用户令牌的形成的 URL 让我在我的 android 设备中完美登录但它没有在 iOS 中打开我的用户帐户. 我能够在 iOS 中完美地查看所有日志,并且我能够获取令牌并形成 url,但它的作用是,它将我带到注销的主页,而不是向我显示我的登录帐户。

但是,如果我单击控制台日志中的登录 URL,它确实会将我带到我在 Safari 中登录的用户帐户。

知道我在这里做错了什么吗?它确实在 Android 中完美运行,它确实让我自动登录到我的用户帐户,但这在 iOS 中不起作用,而是将我带到我网站的主页。

0 投票
1 回答
1176 浏览

cordova - ionic devapp 使用“Advanced HTTP”插件在 Android 上崩溃

我正在开发一个 ionic 4 应用程序并且遇到了 CORS 问题,所以我按照这篇文章https://ionicframework.com/docs/native/http/安装了“高级 http”插件。我正在使用 devapp 来测试我的应用程序。

我正在尝试 http.post 到带有标头的 Azure B2C 令牌 URL{ 'Content-Type': 'application/x-www-form-urlencoded'}

  • 在 iOS DevApp 上工作得很好
  • 在 Android Studio 模拟器上工作正常ionic cordova run android --emulator
  • 在 Android 设备上工作正常ionic cordova run android --device
  • 在 Android 上,DevApp 崩溃并出现以下错误(我能够使用adb logcat并找到错误)

没有虚方法 getHttpUrlChecked(Ljava/lang/String;)Lokhttp3/HttpUrl; 在 Lokhttp3/internal/Internal 类中;或其超类('okhttp3.internal.Internal' 的声明出现在 base.apk 中)

网上的一些帖子表明它在不同的cordova插件之间存在冲突,但我从一个空白模板开始,只使用“cordova-plugin-advanced-http”,DevApp立即崩溃。

有什么建议么?

提前致谢

0 投票
1 回答
89 浏览

http - 本地 http 发布(或获取)后 Ionic appdev 崩溃

我正在使用cordova的本机http来制作http Post和我的devapp(在我的手机中)崩溃!我尝试了更改 OKHTTP_VERSION的解决方案,但它不起作用。

我试图执行下面的命令

但它不起作用。有没有人尝试过这个解决方案?

0 投票
1 回答
164 浏览

cordova - Cordova HTTP 插件如何禁用超时?

默认超时为 60,如果我将超时设置为 0,它仍然可以工作,如何完全禁用它?