Apply SSL into IONIC Apps or Angular Web - node.js

I am new to this.
I have a app that build with IONIC, the backends(authentication, storage, DB) are running at firebase, and the IONIC will call some 3rd party API or my own API that build with node.js and hosted at heroku.
I would like to implement SSL to achieve point to point encryption, so that the real client data won't being hijack by fraud public wifi.
I have no clue where to start and how to do it, please advise and recommend.
Thank you.

All access to Firebase's backend services goes through secure connections (HTTPS/SSL). There is no way to access them through a non-secured connection.
To access for example the Firebase Database from your Ionic application, have a look at the documentation on getting started for web developers.

Related

Need some guidance on deploying/hosting a web app

I recently developed a web app locally, with a React frontend that interacts via proxy with a Node.js backend that interacts with MongoDB Atlas. Everything works locally, and I am ready to actually deploy the web app for public use.
How does hosting work with a full stack web application? Do I host the entire web app in the same place (e.g. S3 bucket), or should the backend and frontend be deployed separately? I have never done this before, so I appreciate any help I can get.
Yes, you can have two different servers for frontend and backend.
You can use theHeroku platform to deploy your backend app, and Mlab to provision a Mongo database. These platforms has free tiers where you can experiment and learn about deployments and clouds.
Once you are comfortable with these then you can move to Elastic Bean Stalk on AWS to provision servers and also database.
Now mlab is not available as it is already been acquired by mongoDB only, so I would recommend you to create the database on Atlas cluster which also offers a free tier.
Rather than using the Heroku, I would suggest you to use MongoDB stitch which is also the backend as a service. If you will use stitch then you can also seek for support from mongoDB people but in case you will use heroku then you will not receive any support from them.
You can refer to the documentation of stitch for more information https://docs.mongodb.com/stitch/. This has complete guidance how you can deploy your app using stich and can use mongodb database.
However if you need more help, please ping me anytime.

Start hybrid development with Heroku

I finished a website with Rails, Heroku & Salesforce and now i must create the same but as mobile application.
In the website project, Heroku was usefull to access Salesforce data with Heroku Connect and Heroku Postgress. I want to know if it's possible to use them for a mobile app.
I guess no, i did not fount lot of documentation about it and it's focus on iOs. I want to create hybrid app on Ionic
Is it possible do to it ?
Or a second idea is to create a REST API in Node as they suggest here to send Json to a connected mobile app dev with Ionic cordova. Another way to create an app connected to the Salesforce Data
I tried Salesforce MobileSDK but I always encouter issues.
What do you think is the best solution ?
if you have some ideas do not hesitate. I'm still "in the sandbox"
Yes, you can expose your Rails app as REST endpoints that your custom / Ionic mobile app can talk to. However, if you just want a mobile UI for the Salesforce parts then you can use Salesforce1 or the MobileSDK for custom mobile apps that just use Salesforce.

Run Phonegap applicaton with node-express

I wanted to make mobile app from existing webapp. My webapp is nodejs-exressjs REST API server, with HTML/JS client.
I wanted to leverage API from my REST server, and swap out client with phonegap/cordova based mobile app.
Till now, the only feasible solution seems to be use CORS, and have phonegap/cordova server and nodejs servers running separately.
Is there a way I can use same server to deploy both my REST Server, and Phonegap/Cordova Client ?
No sorry, Cordova apps rely on having the front client in local, and perform calls to server in REST, so your first thought is correct. You can share the REST server for both applications, but the code of the cordova app client is going to be in the devices locally, without need of a server.

Running Mongodb CRUD API on azure (for Ionic)

I'm trying to run a MongoDB (using NodeJS and Express) on the Azure Server as a server side part of my ionic app.
Once placed on Azure I'd like to access it with my Ionic App using CRUD operations.
What steps do I go through after acquiring a Azure Portal account? Do I take Mobile Services or a simple Web Api?
Is there something specific that I need to add to the NodeJS server?
Generally, the app using Node and MongoDB as the backend for mobile client hosted on Azure App Service, such as WebApps, Mobile Apps (recommended).
Based on my understanding, I think there are some documents that may be helpful for you, please see them below.
For Web Apps, you can refer to the tutorial Get started with Node.js web apps in Azure App Service.
For Mobile Apps, I think your ionic app was based on cordova, there is a tutorial for getting started with cordova Create an Apache Cordova app. And Two related blogs shown a sample of Node + MongoDB on Azure for mobile, please see below.
Exposing MongoDB collections on the node.js backend
Querying MongoDB collections via the Azure Mobile Service node.js backend
To deploy the app to Azure App Service, you can try to publish it via FTP, git, or IDE like VS, please see https://azure.microsoft.com/en-us/documentation/articles/web-sites-deploy/.
Hope it helps. Any concern, please feel free to let me know.

Is it possible to run a NodeJS app using phonegap?

I have a web app that is hosted on a web server that was created using NodeJS (http://www.ruffle.us). What I want to do is make this web app into a mobile application gaining access to the contact list to enter phone numbers. I have looked at technologies such as phonegap/cordova for this task but am still unsure from the documentation. Any experience or input on this would be appreciated.
Cordova provides a browser environment, so you can't run Node.js in it. But you can of course run your web frontend inside Cordova and use it to get access to device APIs like the contact list and communicate with your server.

Resources