Do I need to add an SSL cert to my Express API on Heroku? - node.js

I have a React app I created with npx create-react-app and an Express.js API I am using to make calls to my database all hosted on Heroku. I know that Heroku provides SSL certs but I don't know if that extends to my API calls. Is my API protected automatically or do I need something like express-sslify?

Related

Frontend app (react) unable to connect to backend URL(in node) in openshift

I am using sandbox account of openshift and deployed one react frontend and one node backend app however from frontend when i am calling backend location URL generated by openshift, frontend is crashing. i researched a little and cam eot know that both have to be on same network. How to make sure they can talk to each other? I am new to openshift please help.

How to deploy Node.js & Express.js Backend to be used by Next.js Frontend via Vercel?

ho guys, i want to deploy my next.js application to vercel. well there's no problem about that. But for the reason of a scalable application i have my used backend written separately in Node.js. I also want this to be used with the Next.js Frontend preferably by hosting it on vercel.
So is this possible by default? I don't understand how to achieve this and what will be the necessary steps after having the backend, say, deployed on vercel.
Can you elaborate?
unfortunately you cannot host a backend on Vercel. If you want to host a backend simply you should look at Heroku or Railway. You should then be able to connect your Vercel frontend to your backend hosted by Heroku or Railway

Azure AppService - How to connect and deploy front and back

I'm absolutely new to Azure, CI, and CD.
I have an app consisting of a frontend developed under React + Typescript which sends CRUD requests to a typescript backend. Both front and end are NPM projects.
I've no idea on how to step from development environment to production, deploying to Azure.
Should I create two separate AppServices, one for each project?
If that's the case, how do I then connect them?
Do I just need to change the URL the server listens to?
As you can see I've no idea of what I'm doing but I'm eager to learn so any feedback is much appreciated
The most common approach is
Deploy frontend app ( react ) in one app service.
Backend nodejs app on a different app service.
Then, call the api of the nodejs app from the frontend.
Or,
Set up and run the client and server on the same server using a gulp file and deploy that project on an app service. In that case, there is no cross-site communication. This is the most preferred one.
Using the same app service for both front end and back end application. Refer nodeexpress-backend-with-angular-front-end-in-a-single-azure-web-app.
Using Cors to connect front end and backend Check here
Refer SO Link 1 & Link 2
And You can use deploy staging slots in app service to use different environment like (test/dev, Production).

Can I only deploy the server side of my react native app to Heroku?

I have a react native app that I'm building using expo. For the backend, I am using node.js and Express.
My app hierarchy is such that I have a frontend folder and a backend (server) folder. For example,
Root
|
|Frontend
|Various screens & associated files
|Server
|Routes & other files
For my project, is it possible to just host the backend and not the rest of the app? Such that when I fetch data in the frontend using HTTP requests, instead of routing through localhost (http: //RandomIP:PORT/route) I would use the heroku address as the routing address. I would also host the SQL database along with it.
I tried to follow along with the Heroku documentation, but it seemed like that was for hosting the entirety of the app / web apps instead of mobile, and I ran into constant errors.
I would like to point out that, unlike web pages, mobile apps cannot be hosted on the server and fetched on-demand. In other words, do not try to upload your react-native code to Heroku instead just upload your backend only and then make HTTP requests through the URL provided by Heroku after you have deployed your code.
Therefore go into your backend codebase, initialize a git repository and just deploy that Heroku. Also, you will need to host your SQL database on another service such as Google's Cloud SQL or Amazons AWS Database Services.

how to deploy the nodejs expressjs for api, reactjs for frontend and angular for admin

How can we deploy the nodejs with SSL certificates,
I have expressjs for API, reactjs for front-end and angular for backend,
i need a path like - https://www.domainname.com - for frontend https://www.domainname.com/admin for admin and expressjs api run on background with https. like https://www.domainname.com/api/register
I have merge the expressjs and reactjs into one project and it works fine on local machine but how i can run the admin like - http://localhost/admin (it works with port like http://localhost:4200) but i want with admin. Please let me how to achieve.
You could host your admin application separately and use a CDN like Cloudflare to serve it as a subdomain (admin.domainname.com). Cloudflare comes with free SSL.

Resources