-
Fixed #429: intermediate CA certs are not respected on iOS when using client certs (thanks pavrda)
-
Fixed #441: sensible data can be cached in cache.db on iOS (thanks dtarnawsky)
-
Feature #451: expose response object on
downloadFile()
(thanks to @MobisysGmbH) -
Fixed #372: malformed empty multipart request on Android
-
Fixed #399: memory leakage leads to app crashes on iOS (thanks avargaskun)
-
Fixed #359: memory leakage leads to app crashes on Android
-
Fixed #345: empty file names are not handled correctly (thanks ikosta)
-
Feature #158: support removing headers which were previously set via "setHeader"
- Fixed #334: empty JSON response triggers error even though request is successful (thanks antikalk)
- Fixed #248: clearCookies() does not work on iOS
- Feature #56: add support for X.509 client certificate based authentication
- Fixed #296: multipart requests are not serialized on browser platform
- Fixed #301: data is not decoded correctly when responseType is "json" (thanks antikalk)
- Fixed #300: FormData object containing null or undefined value is not serialized correctly
- Feature #291: add support for sending 'raw' requests (thanks to jachstet-sea and chuchuva)
- Feature #155: add OPTIONS method
- Feature #283: improve error message on timeout on browser platform
- Fixed #275: getAllCookies() is broken because of a typo (thanks ath0mas)
- Feature #101: Support "multipart/form-data" requests (thanks SDA SE Open Industry Solutions)
This feature depends on several Web APIs. See https://github.com/silkimen/cordova-plugin-advanced-http/wiki/Web-APIs-required-for-Multipart-requests for more info.
- Feature #239: add enumeration style object for error codes
- Feature #253: add support for response type "json"
- Feature #127: add multiple file upload (thanks SDA SE Open Industry Solutions and nilswitschel)
- Fixed #224: response type "arraybuffer" and "blob" not working on browser platform
- Feature #216: Support for response type
arraybuffer
- Feature #171: Support for response type
blob
- Feature #205: Add preference for configuring OKHTTP version (thanks RougeCiel)
- Fixed #221: headers not set on Android when request fails due to non-success status code
- Fixed #218: headers are used as params on browser platform
-
Fixed #204: broken support for cordova-android < 7.0
-
⚠️ Deprecation: Deprecated "disableRedirect" in favor of "setFollowRedirect"
-
Fixed #198: cookie header is always passed even if there is no cookie
-
Fixed #201: browser implementation is broken due to broken dependency
-
Fixed #197: iOS crashes when multiple request are done simultaneously (reverted a8e3637)
-
Fixed #189: error code mappings are not precise
-
Fixed #200: compatibility with Java 6 is broken due to string switch on Android
-
⚠️ Deprecation: Deprecated "setSSLCertMode" in favor of "setServerTrustMode"
- Fixed #195: URLs are double-encoded on Android
- Fixed #187: setSSLCertMode with "default" throws an error on Android
- Fixed #115: HTTP connections are not kept alive on iOS (thanks MorpheusDe97)
- Fixed #185: need more detailed SSL error message
- Fixed #179: sending empty string with utf8 serializer throws an exception
- Fixed #172: plugin does not respect user installed CA certs on Android
We've changed a default behavior on Android. User installed CA certs are respected now.
If you don't want this for your needs, you can switch back to old behavior by setting SSL cert mode to legacy
.
- Fixed #142: Plugin affected by REDoS Issue of tough-cookie
- Fixed #157: Arguments are double URL-encoded on "downloadFile" (thanks TheZopo)
- Fixed #164: Arguments are double URL-encoded on "head" (thanks ath0mas)
- Fixed #136: Content-Type header non-overwritable on browser platform
-
Feature #103: implement HTTP SSL cert modes
-
⚠️ Breaking Change: Removed AngularJS (v1) integration service -
⚠️ Breaking Change: Removed "enableSSLPinning" and "acceptAllCerts", use "setSSLCertMode" instead -
⚠️ Breaking Change: Certificates must be placed in "www/certificates" folder
- Fixed #92: headers not deserialized on platform "browser"
- Feature #77: allow overriding global settings for each single request
- Feature #11: add support for "browser" platform
-
Fixed #78: overriding header "Content-Type" not working on Android
-
Fixed #79: PATCH operation not working on Android API level 19 and older (thanks chax)
-
Fixed #83: App crashes on error during download operation on iOS (thanks troyanskiy)
-
Fixed #76: upload sequence is not respecting order of operations needed by some sites (thanks Johny101)
-
⚠️ Deprecation: AngularJS service is deprecated now and will be removed anytime soon
- Fixed #71: does not encode query string in URL correctly on Android
- Fixed #72: app crashes if response encoding is not UTF-8 (thanks jkfb)
- Feature #34: add new serializer "utf8" sending utf-8 encoded plain text (thanks robertocapuano)
- Fixed #45: does not encode arrays correctly as HTTP GET parameter on Android
- Fixed #54: requests are not responding on iOS with non-string values in header object
- Fixed #58: white-list of allowed content-types should be removed for iOS
- Feature #44: "getCookieString" method is exposed
- Feature #43: added support for content type "application/javascript" on iOS (thanks wh33ler)
- Feature #46: "setCookie" allows adding custom cookies
- Fixed #27: "uploadFile" method doesn't return data object on iOS (thanks Faisalali23 and laiyinjie)
- Fixed #40: generic error codes are different on Android and iOS
- Feature #33: response object contains response url
- Fixed #36: setting basic authentication not working correctly (thanks jkfb)
- Fixed #35: Android headers are not normalized (not returned in lowercase)
- Fixed #26: JSON request with array data is not working on Android (JSON error)
- Feature #24: "setHeader" allows configuring headers for specified host
- Change #29: removed "validateDomainName" (see info notice)
- Fixed #31: request fails throwing error on erroneous cookies
- Fixed #28: added support for content type "application/hal+json" on iOS (thanks ryandegruyter)
We've decided to remove the validateDomainName()
method, because people were complaining that acceptAllCerts(true)
is not behaving as expected. And also it's not a good idea to disable domain name validation while using valid certs, because it pretends having a secure connection, but it isn't.
You should either use valid certs with domain name validation enabled (safe for production use) or accept any certs without domain name validation (only for private dev environments). I strongly discourage using fake certs in public networks.
Therefore we are disabling domain name validation automatically, when you set acceptAllCerts(true)
. So if you were using validateDomainName()
function, you need to remove this function call for v1.6.2+.
- Fixed #23: PATCH method broken on android
- Feature #18: implemented PATCH method (thanks akhatri for android implementation)
- Feature #21: added redirection control (thanks to notsyncing and kesozjura)
- Fixed #16: cordova tries to run build script during plugin install
- Fixed #10: fix gzip decompression when request header accepts gzip compression (thanks to DayBr3ak)
- Fixed #13: fix angular integration for
setDataSerializer
(thanks to RangerRick) - Added some missing documentation (thanks to RangerRick)
- Fixed case-sensitive folder name of Android source files
- Use the same error codes if a request timed out
- Fixed a bug in cookie handling (cookies containing an "Expires" string)
- Added setRequestTimeout function to set the timeout in seconds for all further requests
- All response header keys are converted to lowercase (iOS only)
- added a function to remove all cookies for a URL
- fixed an error if the response has no "headers" field
- handles cookies correctly on non-success response from server
- throws error when a callback function is missing
- fixed missing file "umd-tough-cookie.js“ (caused by missing file ".npmignore")
- fixed case-sensitive path name of android source files ("CordovaHTTP" --> "cordovahttp")
- added cookie handling
- cookies are persisted via web storage API
- forked from "cordova-plugin-http" v1.2.0 (see https://github.com/wymsee/cordova-HTTP)
- added configuration for data serializer
- added HTTP methods PUT and DELETE
- Added support for TLSv1.1 and TLSv1.2 for android versions 4.1-4.4 (API levels 16-19)
- Dropped SSLv3 support for all API Levels < 20. It will now only work on API Levels 20-22.
- Fixed the body of errors not being returned in iOS
- Updated AFNetworking to 3.1.0
- Disable encoding get() URLS in android (Thanks to devgeeks)
- Fixed version number in plugin.xml
- Fixed bug using useBasicAuth and setHeader from angular
- updated README
- Added getBasicAuthHeader function
- Added necessary iOS framework (Thanks to EddyVerbruggen)
- Request internet permission in android (Thanks to mbektchiev)
- Fix acceptAllCerts doesn't call callbacks (Thanks to EddyVerbruggen)
- Add validateDomainName (Thanks to denisbabineau)
- Add HEAD request support (untested) (Thanks to denisbabineau)
- Update cordova file plugin dependency (Thanks to denisbabineau)
- useBasicAuthHeader and setHeader are now synchronous functions
- updated AFNetworking to 3.0.4 - only iOS 7+ is now supported
- updated http-request to 6.0
- Support for certificates in www/certificates folder (Thanks to EddyVerbruggen)
- Update AFNetworking to 2.4.1 for iOS bug fix in Xcode 6
- Fixed plugin.xml for case sensitive filesystems (Thanks to andrey-tsaplin)
- Fixed a bug that prevented building
- Initial release
- Fixed examples (Thanks to devgeeks)
- Reports SSL Handshake errors rather than giving a generic error (Thanks to devgeeks)
- Exporting http as a module (Thanks to pvsaikrishna)
- Added Limitations section to readme (Thanks to cvillerm)
- Fixed examples (Thanks to hideov)