Do you want to request a feature or report a bug?
feature: info on what browsers Amplify can run on OR
support more browsers?
thank you.
What is the current behavior?
I noticed that since fetch is used, it won't run on IE and browsers that don't support fetch.
Users can't use Amplify to log in / invoke lambda endpoint etc if it is on IE.
Which versions of Amplify, and which browser / OS are affected by this issue? Did this work in previous versions?
Amplify 0.4.3+
IE
I am not sure about what other browsers(versions) that it can't run on.
Hi Amplify supports modern browsers like Chrome, Safari or Firefox. Although we didn't test all the versions of those browsers but it should work in the major version of those.
Thanks.
yes, I agree that it works fine on most of them.
I noticed a case from our users that it can't run on Chrome 64 on a Windows OS to invoke lambda.
Any plans to support IE pls?
Currently I am using identity module in an ember app and calls are not working in IE11 (since latest version of amazon-cognito-identity-js uses fetch). Any suggestion or thoughts please?
@JoseWebby thanks for the feedback. I will put that in our Icebox.
@JoseWebby, I was able to resolve IE11 issues with Amplify in my React app by adding babel-polyfill to address the lack ES6 support. This works with aws-amplify v1.0.2.
$ npm install babel-polyfill --save
// src/index.js
import 'babel-polyfill'; //This must be imported before React and Amplify
import React from 'react';
import ReactDOM from 'react-dom';
import Amplify from 'aws-amplify';
Amplify.configure({ ... });
credit: mycodesmells
Thanks @zimmelbc
I am using a similar polyfill in my ember app for now.
https://github.com/ember-cli/ember-fetch
Hi @JoseWebby Does it work for u with that similar polyfill?
@Jun711 Yep, it works fine in my ember app.
@zimmelbc
I added import '@babel/polyfill'; in my angular app but I still get fetch is undefined reference error
it works when I use whatwg-fetch
https://github.com/github/fetch
I've hit problems with auth() in iOS 9, resulting in not being able to sign in. Can anyone confirm if Amplify will work on older Safari versions? Or at least what the minimum supported version is.
@johneast I tested in IOS 9.3 and it works for me. Can you provide more details like what's the error?
I should also add, I'm doing this in an Ionic 3 app. The error object thrown by Amplify is:
{
"line":188933,
"column":10,
"sourceURL":"http://192.168.0.10:8100/build/vendor.js",
"__zone_symbol__currentTask: {
"type":"microTask",
"state":"notScheduled",
"source":"Promise.then",
"zone":"angular",
"cancelFn":null,
"runCount":0
}
}
The code that produces this is:
login() {
console.log('Logging in with credentials: ' + JSON.stringify(this.registerCredentials));
this.amplifyService.auth().signIn(this.registerCredentials.username, this.registerCredentials.password)
.then(user => {
console.log("Logged in. Doing auth success");
if (user.challengeName) {
if (user.challengeName === 'NEW_PASSWORD_REQUIRED') {
// User needs to set a new password.
this.navCtrl.push(NewPasswordPage, {username: user.username});
}
} else {
this.handleAuthSuccess();
}
})
.catch(err => {
console.log('Error logging in.' + JSON.stringify(err));
});
}
The amplifyService is injected. I get the log line 'Logging in'. After a little pause, I get the error log line from the catch. I don't see the line that says 'Logged in' so I know the exception isn't coming from my own code.
My package.json looks like:
{
"dependencies": {
"@angular/common": "5.2.11",
"@angular/compiler": "5.2.11",
"@angular/compiler-cli": "5.2.11",
"@angular/core": "5.2.11",
"@angular/forms": "5.2.11",
"@angular/http": "5.2.11",
"@angular/platform-browser": "5.2.11",
"@angular/platform-browser-dynamic": "5.2.11",
"@ionic-native/core": "4.8.0",
"@ionic-native/splash-screen": "4.8.0",
"@ionic-native/status-bar": "4.8.0",
"@ionic/storage": "2.1.3",
"@ngrx/core": "1.2.0",
"@ngrx/effects": "5.0.0",
"@ngrx/store": "4.1.1",
"aws-amplify": "^0.4.8",
"aws-amplify-angular": "^0.1.6",
"html2pdf.js": "^0.9.0",
"ionic-angular": "3.9.2",
"ionicons": "3.0.0",
"jspdf": "^1.4.1",
"moment": "^2.22.2",
"moment-recur-ts": "^1.3.1",
"rxjs": "5.5.5",
"sw-toolbox": "3.6.0",
"zone.js": "0.8.18"
},
"devDependencies": {
"@ionic/app-scripts": "3.1.5",
"@types/jspdf": "^1.1.31",
"@types/node": "8.10.19",
"typescript": "2.4.2",
"webpack-merge": "^4.1.3"
}
}
This happens on an iPad mini 1. iOS v 9.3.5.
If I run the same code on a recent iPad iOS v11 everything works fine.
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
We currently follow suit to browser support similar to AWS. Closing issue
Most helpful comment
@JoseWebby, I was able to resolve IE11 issues with Amplify in my React app by adding babel-polyfill to address the lack ES6 support. This works with aws-amplify v1.0.2.
$ npm install babel-polyfill --savecredit: mycodesmells