this post was submitted on 18 Jun 2025
1 points (100.0% liked)
Programming
15614 readers
1 users here now
All things programming and coding related. Subcommunity of Technology.
This community's icon was made by Aaron Schneider, under the CC-BY-NC-SA 4.0 license.
founded 3 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
What programming language do you have already or intend to learn?
I know some basic Rust (currently at chapter 9) and a little bit of JavaScript.
I'm trying to work with headless CMSs and that requires some understanding on how APIs work..
Even tho I wouldn't want to stick with JS, I don't really want to dig into frameworks and dependency hells.
But I like the concept and I need to build a site that grabs some data from an external api, so a headless cms would be my choice to grab the data and structure them there in order to be rendered later in something like a static site generator (I'm quite good at Hugo). Or will learn some basic React and try to build a template on my own there...
If you're building a website, you'll probably want to stick to Javascript over Rust.
This MDN article does a pretty good job at introducing the concept of making network requests in Javascript: https://developer.mozilla.org/en-US/docs/Learn_web_development/Core/Scripting/Network_requests. It focuses on the "fetch" API as the tool for making requests, which is the standard way to make network requests in Javascript. There are other tools like Axios that may make things easier, but "fetch" should be fine for your use case.
Another concept that will be relevant here is asynchronous programming: https://developer.mozilla.org/en-US/docs/Learn_web_development/Extensions/Async_JS/Introducing. Basically, there will be some delay between when you make the request and when you get a response. So you'll need to write your logic in a way that does the "waiting" part correctly.
One important detail is that most APIs use some form of authentication. So when you're "grabbing the data" from an external site, the site knows who you are and that you are allowed to access that data. Getting authentication right might be a little tricky, but here is an entry point: https://developer.mozilla.org/en-US/docs/Web/HTTP/Guides/Authentication. Basically, you'll need to figure out what authentication strategy your headless CMS is using, and then make sure to safely pass those credentials when making your network requests. If the API(s) you are using are public, you won't need to worry about this.
If your goal is primarily to get data from an external source, this should be a good starting point. You don't necessarily need to get too deep into the backend or even the technical details of things like HTTP or REST. However, if you're interesting in getting a deeper understanding of Web APIs, the other comment talking about building a skeleton API would be a good exercise.