{"id":33111,"date":"2024-11-01T09:13:50","date_gmt":"2024-11-01T09:13:50","guid":{"rendered":"http:\/\/atmokpo.com\/w\/?p=33111"},"modified":"2024-11-01T11:28:55","modified_gmt":"2024-11-01T11:28:55","slug":"spring-boot-backend-development-course-blog-creation-example-leveraging-the-advantages-of-the-web-with-rest-api","status":"publish","type":"post","link":"https:\/\/atmokpo.com\/w\/33111\/","title":{"rendered":"Spring Boot Backend Development Course, Blog Creation Example, Leveraging the Advantages of the Web with REST API"},"content":{"rendered":"<p><body><\/p>\n<p>In this course, you will learn how to create a REST API-based blog application using Spring Boot. This course will cover a detailed understanding of Spring Boot, project structure, database configuration, RESTful API design, communication with clients, and deployment methods. By the end of the course, you will be equipped to build and operate a blog application on your own.<\/p>\n<h2>1. Overview of Spring Boot<\/h2>\n<p>Spring Boot is an extension of the Java-based web framework Spring, which helps to develop applications quickly and conveniently. It minimizes complex configurations and allows for the easy creation of a typical web application structure. Using Spring Boot provides the following advantages:<\/p>\n<ul>\n<li>Rapid application development: Basic configurations are provided through the principle of &#8220;Convention over Configuration&#8221;.<\/li>\n<li>Auto-configuration: Various settings are automatically configured, reducing the areas the developer needs to worry about.<\/li>\n<li>Self-executable: It has an embedded web server, making it usable without separate server installation.<\/li>\n<\/ul>\n<h2>2. Setting Up the Development Environment<\/h2>\n<p>The following environment is required to develop a Spring Boot project:<\/p>\n<ul>\n<li>Java JDK 11 or higher<\/li>\n<li>Maven or Gradle (project build tools)<\/li>\n<li>IDE (IntelliJ IDEA, Eclipse, etc.)<\/li>\n<li>MySQL or H2 database (optional)<\/li>\n<\/ul>\n<p>First, install the JDK and set up the development tools, then create a new Spring Boot project. If you are using IntelliJ IDEA, click on File &gt; New &gt; Project and select &#8216;Spring Initializr&#8217;.<\/p>\n<h3>2.1 Using Spring Initializr<\/h3>\n<p>You can generate a basic Spring Boot project using Spring Initializr. Set the default values and add the necessary dependencies:<\/p>\n<ul>\n<li>Spring Web<\/li>\n<li>Spring Data JPA<\/li>\n<li>MySQL Driver<\/li>\n<li>Spring Boot DevTools<\/li>\n<p> (provides convenient features during development)\n<\/ul>\n<h2>3. Understanding Project Structure<\/h2>\n<p>Once the project is created, a basic directory structure is generated:<\/p>\n<pre>\nsrc\/\n \u2514\u2500\u2500 main\/\n     \u251c\u2500\u2500 java\/\n     \u2502   \u2514\u2500\u2500 com\/\n     \u2502       \u2514\u2500\u2500 example\/\n     \u2502           \u2514\u2500\u2500 blog\/\n     \u2502               \u251c\u2500\u2500 BlogApplication.java\n     \u2502               \u2514\u2500\u2500 controller\/\n     \u2502               \u2514\u2500\u2500 model\/\n     \u2502               \u2514\u2500\u2500 repository\/\n     \u2502               \u2514\u2500\u2500 service\/\n     \u2514\u2500\u2500 resources\/\n         \u251c\u2500\u2500 application.properties\n         \u2514\u2500\u2500 static\/\n         \u2514\u2500\u2500 templates\/\n<\/pre>\n<p>This structure allows for the implementation of the MVC pattern and helps manage source code by separating roles within each layer.<\/p>\n<h2>4. Database Configuration<\/h2>\n<p>Now, let&#8217;s set up the database connection. Add the following content to the application.properties file:<\/p>\n<pre>\nspring.datasource.url=jdbc:mysql:\/\/localhost:3306\/blog\nspring.datasource.username=root\nspring.datasource.password=yourpassword\nspring.jpa.hibernate.ddl-auto=update\nspring.jpa.show-sql=true\n<\/pre>\n<p>The above configuration values are the basic information required to connect to a MySQL database. If the database does not exist, you need to create it first in MySQL.<\/p>\n<h3>4.1 Database Migration<\/h3>\n<p>To perform database migration, define the entity for Spring Data JPA. For example, the Post entity for blog posts can be defined as follows:<\/p>\n<pre>\npackage com.example.blog.model;\n\nimport javax.persistence.*;\n\n@Entity\n@Table(name = \"posts\")\npublic class Post {\n    @Id\n    @GeneratedValue(strategy = GenerationType.IDENTITY)\n    private Long id;\n\n    private String title;\n    private String content;\n    private String author;\n\n    \/\/ Default constructor and getters\/setters omitted\n}\n<\/pre>\n<h2>5. Designing RESTful API<\/h2>\n<p>RESTful API is an important component of web services, which identifies resources with unique URLs and manipulates them through HTTP methods. In the next steps, we will build APIs for the blog application.<\/p>\n<h3>5.1 Writing the Controller<\/h3>\n<p>We will write PostController to manage the REST API for blog posts.<\/p>\n<pre>\npackage com.example.blog.controller;\n\nimport com.example.blog.model.Post;\nimport com.example.blog.repository.PostRepository;\nimport org.springframework.beans.factory.annotation.Autowired;\nimport org.springframework.http.ResponseEntity;\nimport org.springframework.web.bind.annotation.*;\n\nimport java.util.List;\n\n@RestController\n@RequestMapping(\"\/api\/posts\")\npublic class PostController {\n    @Autowired\n    private PostRepository postRepository;\n\n    @GetMapping\n    public List<Post> getAllPosts() {\n        return postRepository.findAll();\n    }\n\n    @PostMapping\n    public Post createPost(@RequestBody Post post) {\n        return postRepository.save(post);\n    }\n    \n    @GetMapping(\"\/{id}\")\n    public ResponseEntity<Post> getPostById(@PathVariable Long id) {\n        Post post = postRepository.findById(id).orElse(null);\n        return ResponseEntity.ok(post);\n    }\n    \n    @PutMapping(\"\/{id}\")\n    public ResponseEntity<Post> updatePost(@PathVariable Long id, @RequestBody Post postDetails) {\n        Post post = postRepository.findById(id).orElse(null);\n        \n        \/\/ Logic for updating content and saving omitted\n        \n        return ResponseEntity.ok(updatedPost);\n    }\n    \n    @DeleteMapping(\"\/{id}\")\n    public ResponseEntity<Void> deletePost(@PathVariable Long id) {\n        postRepository.deleteById(id);\n        return ResponseEntity.ok().build();\n    }\n}\n<\/Void><\/Post><\/Post><\/Post><\/pre>\n<h2>6. Communication with Frontend<\/h2>\n<p>Once the REST API is built, communication with the frontend is necessary. You can use the Fetch API of JavaScript to send and receive data. Write logic for users to fetch, create, update, and delete posts.<\/p>\n<h3>6.1 Example: Fetching the List of Posts<\/h3>\n<pre>\nfetch('\/api\/posts')\n    .then(response =&gt; response.json())\n    .then(data =&gt; {\n        console.log(data);\n    })\n    .catch(error =&gt; console.error('Error:', error));\n<\/pre>\n<h3>6.2 Creating a Post<\/h3>\n<pre>\nfetch('\/api\/posts', {\n    method: 'POST',\n    headers: {\n        'Content-Type': 'application\/json',\n    },\n    body: JSON.stringify({ title: 'Title', content: 'Content', author: 'Author' }),\n})\n.then(response =&gt; response.json())\n.then(data =&gt; {\n  console.log('Success:', data);\n})\n.catch(error =&gt; {\n  console.error('Error:', error);\n});\n<\/pre>\n<h2>7. Security and Authentication<\/h2>\n<p>To add user authentication to the blog, you can utilize Spring Security. You can add JWT (JSON Web Token) based authentication for user management and authorization.<\/p>\n<h2>8. Deployment<\/h2>\n<p>If the application is functioning correctly, it&#8217;s time to deploy it to a production server. Various cloud services such as AWS and Heroku can be used for deployment. Using Docker can make management even easier.<\/p>\n<h2>9. Conclusion<\/h2>\n<p>Through this course, you learned how to develop a REST API-based blog application using Spring Boot. By understanding the necessary technologies at each stage and writing actual code, you have gained an opportunity to enhance your skills as a web developer. Lastly, it is important to continuously improve and expand the application you developed. Thank you!<\/p>\n<p><\/body><\/p>\n","protected":false},"excerpt":{"rendered":"<p>In this course, you will learn how to create a REST API-based blog application using Spring Boot. This course will cover a detailed understanding of Spring Boot, project structure, database configuration, RESTful API design, communication with clients, and deployment methods. By the end of the course, you will be equipped to build and operate a &hellip; <a href=\"https:\/\/atmokpo.com\/w\/33111\/\" class=\"more-link\">\ub354 \ubcf4\uae30<span class=\"screen-reader-text\"> &#8220;Spring Boot Backend Development Course, Blog Creation Example, Leveraging the Advantages of the Web with REST API&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[131],"tags":[],"class_list":["post-33111","post","type-post","status-publish","format-standard","hentry","category-spring-boot-backend-development"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.2 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Spring Boot Backend Development Course, Blog Creation Example, Leveraging the Advantages of the Web with REST API - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/atmokpo.com\/w\/33111\/\" \/>\n<meta property=\"og:locale\" content=\"ko_KR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Spring Boot Backend Development Course, Blog Creation Example, Leveraging the Advantages of the Web with REST API - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\" \/>\n<meta property=\"og:description\" content=\"In this course, you will learn how to create a REST API-based blog application using Spring Boot. This course will cover a detailed understanding of Spring Boot, project structure, database configuration, RESTful API design, communication with clients, and deployment methods. By the end of the course, you will be equipped to build and operate a &hellip; \ub354 \ubcf4\uae30 &quot;Spring Boot Backend Development Course, Blog Creation Example, Leveraging the Advantages of the Web with REST API&quot;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/atmokpo.com\/w\/33111\/\" \/>\n<meta property=\"og:site_name\" content=\"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\" \/>\n<meta property=\"article:published_time\" content=\"2024-11-01T09:13:50+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-11-01T11:28:55+00:00\" \/>\n<meta name=\"author\" content=\"root\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@bebubo4\" \/>\n<meta name=\"twitter:site\" content=\"@bebubo4\" \/>\n<meta name=\"twitter:label1\" content=\"\uae00\uc4f4\uc774\" \/>\n\t<meta name=\"twitter:data1\" content=\"root\" \/>\n\t<meta name=\"twitter:label2\" content=\"\uc608\uc0c1 \ub418\ub294 \ud310\ub3c5 \uc2dc\uac04\" \/>\n\t<meta name=\"twitter:data2\" content=\"4\ubd84\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/atmokpo.com\/w\/33111\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/atmokpo.com\/w\/33111\/\"},\"author\":{\"name\":\"root\",\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/person\/91b6b3b138fbba0efb4ae64b1abd81d7\"},\"headline\":\"Spring Boot Backend Development Course, Blog Creation Example, Leveraging the Advantages of the Web with REST API\",\"datePublished\":\"2024-11-01T09:13:50+00:00\",\"dateModified\":\"2024-11-01T11:28:55+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/atmokpo.com\/w\/33111\/\"},\"wordCount\":605,\"publisher\":{\"@id\":\"https:\/\/atmokpo.com\/w\/#organization\"},\"articleSection\":[\"Spring Boot backend development\"],\"inLanguage\":\"ko-KR\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/atmokpo.com\/w\/33111\/\",\"url\":\"https:\/\/atmokpo.com\/w\/33111\/\",\"name\":\"Spring Boot Backend Development Course, Blog Creation Example, Leveraging the Advantages of the Web with REST API - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\",\"isPartOf\":{\"@id\":\"https:\/\/atmokpo.com\/w\/#website\"},\"datePublished\":\"2024-11-01T09:13:50+00:00\",\"dateModified\":\"2024-11-01T11:28:55+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/atmokpo.com\/w\/33111\/#breadcrumb\"},\"inLanguage\":\"ko-KR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/atmokpo.com\/w\/33111\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/atmokpo.com\/w\/33111\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\ud648\",\"item\":\"https:\/\/atmokpo.com\/w\/en\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Spring Boot Backend Development Course, Blog Creation Example, Leveraging the Advantages of the Web with REST API\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/atmokpo.com\/w\/#website\",\"url\":\"https:\/\/atmokpo.com\/w\/\",\"name\":\"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/atmokpo.com\/w\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/atmokpo.com\/w\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"ko-KR\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/atmokpo.com\/w\/#organization\",\"name\":\"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\",\"url\":\"https:\/\/atmokpo.com\/w\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/atmokpo.com\/w\/wp-content\/uploads\/2024\/11\/logo.png\",\"contentUrl\":\"https:\/\/atmokpo.com\/w\/wp-content\/uploads\/2024\/11\/logo.png\",\"width\":400,\"height\":400,\"caption\":\"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\"},\"image\":{\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/x.com\/bebubo4\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/person\/91b6b3b138fbba0efb4ae64b1abd81d7\",\"name\":\"root\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/708197b41fc6435a7ce22d951b25d4a47e9e904270cb1f04682d4f025066f80c?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/708197b41fc6435a7ce22d951b25d4a47e9e904270cb1f04682d4f025066f80c?s=96&d=mm&r=g\",\"caption\":\"root\"},\"sameAs\":[\"http:\/\/atmokpo.com\/w\"],\"url\":\"https:\/\/atmokpo.com\/w\/author\/root\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Spring Boot Backend Development Course, Blog Creation Example, Leveraging the Advantages of the Web with REST API - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/atmokpo.com\/w\/33111\/","og_locale":"ko_KR","og_type":"article","og_title":"Spring Boot Backend Development Course, Blog Creation Example, Leveraging the Advantages of the Web with REST API - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","og_description":"In this course, you will learn how to create a REST API-based blog application using Spring Boot. This course will cover a detailed understanding of Spring Boot, project structure, database configuration, RESTful API design, communication with clients, and deployment methods. By the end of the course, you will be equipped to build and operate a &hellip; \ub354 \ubcf4\uae30 \"Spring Boot Backend Development Course, Blog Creation Example, Leveraging the Advantages of the Web with REST API\"","og_url":"https:\/\/atmokpo.com\/w\/33111\/","og_site_name":"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","article_published_time":"2024-11-01T09:13:50+00:00","article_modified_time":"2024-11-01T11:28:55+00:00","author":"root","twitter_card":"summary_large_image","twitter_creator":"@bebubo4","twitter_site":"@bebubo4","twitter_misc":{"\uae00\uc4f4\uc774":"root","\uc608\uc0c1 \ub418\ub294 \ud310\ub3c5 \uc2dc\uac04":"4\ubd84"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/atmokpo.com\/w\/33111\/#article","isPartOf":{"@id":"https:\/\/atmokpo.com\/w\/33111\/"},"author":{"name":"root","@id":"https:\/\/atmokpo.com\/w\/#\/schema\/person\/91b6b3b138fbba0efb4ae64b1abd81d7"},"headline":"Spring Boot Backend Development Course, Blog Creation Example, Leveraging the Advantages of the Web with REST API","datePublished":"2024-11-01T09:13:50+00:00","dateModified":"2024-11-01T11:28:55+00:00","mainEntityOfPage":{"@id":"https:\/\/atmokpo.com\/w\/33111\/"},"wordCount":605,"publisher":{"@id":"https:\/\/atmokpo.com\/w\/#organization"},"articleSection":["Spring Boot backend development"],"inLanguage":"ko-KR"},{"@type":"WebPage","@id":"https:\/\/atmokpo.com\/w\/33111\/","url":"https:\/\/atmokpo.com\/w\/33111\/","name":"Spring Boot Backend Development Course, Blog Creation Example, Leveraging the Advantages of the Web with REST API - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","isPartOf":{"@id":"https:\/\/atmokpo.com\/w\/#website"},"datePublished":"2024-11-01T09:13:50+00:00","dateModified":"2024-11-01T11:28:55+00:00","breadcrumb":{"@id":"https:\/\/atmokpo.com\/w\/33111\/#breadcrumb"},"inLanguage":"ko-KR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/atmokpo.com\/w\/33111\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/atmokpo.com\/w\/33111\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\ud648","item":"https:\/\/atmokpo.com\/w\/en\/"},{"@type":"ListItem","position":2,"name":"Spring Boot Backend Development Course, Blog Creation Example, Leveraging the Advantages of the Web with REST API"}]},{"@type":"WebSite","@id":"https:\/\/atmokpo.com\/w\/#website","url":"https:\/\/atmokpo.com\/w\/","name":"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","description":"","publisher":{"@id":"https:\/\/atmokpo.com\/w\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/atmokpo.com\/w\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"ko-KR"},{"@type":"Organization","@id":"https:\/\/atmokpo.com\/w\/#organization","name":"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","url":"https:\/\/atmokpo.com\/w\/","logo":{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/atmokpo.com\/w\/#\/schema\/logo\/image\/","url":"https:\/\/atmokpo.com\/w\/wp-content\/uploads\/2024\/11\/logo.png","contentUrl":"https:\/\/atmokpo.com\/w\/wp-content\/uploads\/2024\/11\/logo.png","width":400,"height":400,"caption":"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8"},"image":{"@id":"https:\/\/atmokpo.com\/w\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/x.com\/bebubo4"]},{"@type":"Person","@id":"https:\/\/atmokpo.com\/w\/#\/schema\/person\/91b6b3b138fbba0efb4ae64b1abd81d7","name":"root","image":{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/atmokpo.com\/w\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/708197b41fc6435a7ce22d951b25d4a47e9e904270cb1f04682d4f025066f80c?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/708197b41fc6435a7ce22d951b25d4a47e9e904270cb1f04682d4f025066f80c?s=96&d=mm&r=g","caption":"root"},"sameAs":["http:\/\/atmokpo.com\/w"],"url":"https:\/\/atmokpo.com\/w\/author\/root\/"}]}},"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack-related-posts":[],"_links":{"self":[{"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/posts\/33111","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/comments?post=33111"}],"version-history":[{"count":1,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/posts\/33111\/revisions"}],"predecessor-version":[{"id":33112,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/posts\/33111\/revisions\/33112"}],"wp:attachment":[{"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/media?parent=33111"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/categories?post=33111"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/tags?post=33111"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}