Saving data to your web application requires server-side development, for example, using PHP and MySQL. Someone asked a similar question here: https://www.construct.net/en/forum/construct-2/how-do-i-18/newbie-question-on-load-save-d-58990. I’m not finding a Construct 3 tutorial but the ideas are the same.
To avoid server-side development, you could look at services like Firebase or Parse, or PlayFab or GameSparks. I don’t know of any Construct 3 plugins for these now, other than maybe — ‘s Firebase plugins: https://chadorirebornxd.itch.io/construct-master-collection
And about access-control-allow-origin, it’s one of those many server-side details. In a nutshell, it’s only needed when your game (html & scripts) loads from a different website (e.g., site A) than your web api server (site B). It’s set as an http header on your api app, allowing your site A app to make Ajax calls to site B. I think all of the hosted services, like Firebase, allow you to configure it.