I'm trying to run a simple singup example on my mobile app using Ionic framework and Parse.com. The code is simple as follows:
Parse.initialize(APP_KEY, JS_KEY);
Parse.User.signUp("my.user", "123456", {}, {
success: function(user) {
// Hooray! Let them use the app now.
console.log('yuhuuu ' + user)
},
error: function(user, error) {
// Show the error message somewhere and let the user try again.
alert("Error: " + error.code + " " + error.message);
}
});
This code works when I test it on my browser, but when I run it on my cellphone I get an error code 100
with the following message:
I've tried already to change the way I singup (usin the object instead of passing user and password directly). Also checked if the android app has proper permissions for accessing web resources (it's OK).
To Solve Flutter Web getting 'XMLHttpRequest' error while making HTTP call Error Most cases of this error just add Access-Control-Allow-Origin value in the header might resolve the issue. Just make sure to replace all Underscore by Dash.
This error is a Javascript error and it can be inspected from AndroidStudio terminal or from the browser console. If you run into this problem it means that the requests to the API server are failing due to a CORS error.
After digging a little deeper I've found this link, which brought to my attention the root cause of my problem. Cordova (one of underlying platforms of Ionic) limits requests to only local (file://
) resources, which made all external requests fail.
In order to overwrite this behaviour you need to use the whitelist plugin and set it up to allow you desired api backend.
This can be achieved as follows.
First, add the plugin to the project.
cordova plugin add https://github.com/apache/cordova-plugin-whitelist.git
Then set up your backend to the whitelist at the config.xml
file.
<allow-intent href="*://*api.parse.com/*"/>
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With