{"id":33115,"date":"2024-11-01T09:13:52","date_gmt":"2024-11-01T09:13:52","guid":{"rendered":"http:\/\/atmokpo.com\/w\/?p=33115"},"modified":"2024-11-01T11:28:54","modified_gmt":"2024-11-01T11:28:54","slug":"spring-boot-backend-development-course-blog-creation-example-preparing-for-a-project","status":"publish","type":"post","link":"https:\/\/atmokpo.com\/w\/33115\/","title":{"rendered":"Spring Boot Backend Development Course, Blog Creation Example, Preparing for a Project"},"content":{"rendered":"<p><body><\/p>\n<p>This course guides you through the process of creating a simple blog using Spring Boot. Spring Boot is a framework developed in Java that helps you build web applications easily and quickly. In this course, you will cover project setup, database configuration, RESTful API implementation, authentication and authorization, and client integration step by step. Through this article, you can learn a wide range of topics from the basics to advanced concepts of Spring Boot.<\/p>\n<h2>1. Preparing the Project<\/h2>\n<h3>1.1 Introduction to Spring Boot<\/h3>\n<p>Spring Boot is one of the projects of the Spring framework that allows you to develop applications quickly without complex configurations. The main advantages of Spring Boot are as follows:<\/p>\n<ul>\n<li>Reduced complexity related to changes<\/li>\n<li>Increased productivity through automatic configuration<\/li>\n<li>Suitable for microservices architecture<\/li>\n<li>Uses an embedded WAS (Web Application Server)<\/li>\n<\/ul>\n<h3>1.2 Setting Up the Development Environment<\/h3>\n<p>Before starting the project, you need to set up the development environment. Install the following tools:<\/p>\n<ul>\n<li>Java Development Kit (JDK) &#8211; Java 11 or higher recommended<\/li>\n<li>IDE &#8211; IntelliJ IDEA, Eclipse, or Spring Tool Suite<\/li>\n<li>Gradle or Maven &#8211; build tools for dependency management<\/li>\n<li>Database &#8211; MySQL, PostgreSQL, etc.<\/li>\n<\/ul>\n<h3>1.3 Creating a Spring Boot Project<\/h3>\n<p>You can use <a href=\"https:\/\/start.spring.io\/\">Spring Initializr<\/a> to create a Spring Boot project. Use the following settings to generate it:<\/p>\n<ul>\n<li>Project: Maven Project<\/li>\n<li>Language: Java<\/li>\n<li>Spring Boot: 2.5.x (or latest version)<\/li>\n<li>Group: com.example<\/li>\n<li>Artifact: blog<\/li>\n<li>Dependencies: Spring Web, Spring Data JPA, MySQL Driver, Spring Security<\/li>\n<\/ul>\n<p>When you open the generated project in your IDE, you will see that the basic directory structure has been created.<\/p>\n<h2>2. Database Configuration<\/h2>\n<h3>2.1 Installing MySQL<\/h3>\n<p>Install MySQL and create a database. Let&#8217;s create a database with the following command:<\/p>\n<pre><code>CREATE DATABASE blogdb;<\/code><\/pre>\n<h3>2.2 Configuring application.properties<\/h3>\n<p>Open the src\/main\/resources\/application.properties file and set the database connection information:<\/p>\n<pre><code>spring.datasource.url=jdbc:mysql:\/\/localhost:3306\/blogdb\nspring.datasource.username=root\nspring.datasource.password=yourpassword\nspring.jpa.hibernate.ddl-auto=update\nspring.jpa.show-sql=true<\/code><\/pre>\n<h3>2.3 Creating JPA Entities<\/h3>\n<p>Next, create an entity class to store the blog&#8217;s data. For example, the Post entity can be written as follows:<\/p>\n<pre><code>package com.example.blog.model;\n\nimport javax.persistence.*;\n\n@Entity\n@Table(name = \"posts\")\npublic class Post {\n    \n    @Id\n    @GeneratedValue(strategy = GenerationType.IDENTITY)\n    private Long id;\n\n    @Column(nullable = false)\n    private String title;\n\n    @Column(nullable = false)\n    private String content;\n\n    \/\/ Getters and Setters\n}<\/code><\/pre>\n<h2>3. Implementing RESTful API<\/h2>\n<h3>3.1 Defining the Controller Class<\/h3>\n<p>To manage blog posts, create the PostController class:<\/p>\n<pre><code>package 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\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)\n                .orElseThrow(() -> new ResourceNotFoundException(\"Post not found with id \" + id));\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)\n                .orElseThrow(() -> new ResourceNotFoundException(\"Post not found with id \" + id));\n        \n        post.setTitle(postDetails.getTitle());\n        post.setContent(postDetails.getContent());\n        Post updatedPost = postRepository.save(post);\n        return ResponseEntity.ok(updatedPost);\n    }\n\n    @DeleteMapping(\"\/{id}\")\n    public ResponseEntity<Void> deletePost(@PathVariable Long id) {\n        Post post = postRepository.findById(id)\n                .orElseThrow(() -> new ResourceNotFoundException(\"Post not found with id \" + id));\n        \n        postRepository.delete(post);\n        return ResponseEntity.noContent().build();\n    }\n}<\/code><\/pre>\n<h3>3.2 Creating Repository<\/h3>\n<p>Create a repository to access the database using Spring Data JPA:<\/p>\n<pre><code>package com.example.blog.repository;\n\nimport com.example.blog.model.Post;\nimport org.springframework.data.jpa.repository.JpaRepository;\n\npublic interface PostRepository extends JpaRepository<Post, Long> {\n}<\/code><\/pre>\n<h2>4. Authentication and Authorization<\/h2>\n<h3>4.1 Configuring Spring Security<\/h3>\n<p>To add basic authentication features to the blog application, configure Spring Security. Create the WebSecurityConfig class and set it up as follows:<\/p>\n<pre><code>package com.example.blog.config;\n\nimport org.springframework.context.annotation.Bean;\nimport org.springframework.security.config.annotation.web.builders.HttpSecurity;\nimport org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;\nimport org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;\nimport org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;\nimport org.springframework.security.crypto.password.PasswordEncoder;\n\n@EnableWebSecurity\npublic class WebSecurityConfig extends WebSecurityConfigurerAdapter {\n    \n    @Override\n    protected void configure(HttpSecurity http) throws Exception {\n        http.csrf().disable()\n            .authorizeRequests()\n            .antMatchers(\"\/api\/posts\/**\").authenticated()\n            .and()\n            .httpBasic();\n    }\n    \n    @Bean\n    public PasswordEncoder passwordEncoder() {\n        return new BCryptPasswordEncoder();\n    }\n}<\/code><\/pre>\n<h2>5. Client Integration<\/h2>\n<p>Integrate the backend API with the client application to complete the blog application. You can use various frontend frameworks such as React, Vue, Angular to communicate with the API and exchange data. Here is an example of calling the backend API from the frontend using Axios:<\/p>\n<pre><code>import axios from 'axios';\n\nconst API_URL = 'http:\/\/localhost:8080\/api\/posts';\n\nexport const fetchPosts = async () => {\n    const response = await axios.get(API_URL, {\n        auth: {\n            username: 'user',\n            password: 'password'\n        }\n    });\n    return response.data;\n};\n\n\/\/ Implement other CRUD functions\n<\/code><\/pre>\n<h2>6. Conclusion<\/h2>\n<p>In this course, we covered the process of creating a basic blog application using Spring Boot. We addressed various topics from project preparation, database configuration, RESTful API implementation, authentication and authorization, to client integration. We hope you gain experience to create your own blog using various technologies.<\/p>\n<p>Additionally, it is recommended to utilize various materials and communities related to Spring Boot to gain more knowledge and improve your skills. We hope this course serves as your first step in Spring Boot development!<\/p>\n<p><\/body><\/p>\n","protected":false},"excerpt":{"rendered":"<p>This course guides you through the process of creating a simple blog using Spring Boot. Spring Boot is a framework developed in Java that helps you build web applications easily and quickly. In this course, you will cover project setup, database configuration, RESTful API implementation, authentication and authorization, and client integration step by step. Through &hellip; <a href=\"https:\/\/atmokpo.com\/w\/33115\/\" class=\"more-link\">\ub354 \ubcf4\uae30<span class=\"screen-reader-text\"> &#8220;Spring Boot Backend Development Course, Blog Creation Example, Preparing for a Project&#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-33115","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, Preparing for a Project - \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\/33115\/\" \/>\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, Preparing for a Project - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\" \/>\n<meta property=\"og:description\" content=\"This course guides you through the process of creating a simple blog using Spring Boot. Spring Boot is a framework developed in Java that helps you build web applications easily and quickly. In this course, you will cover project setup, database configuration, RESTful API implementation, authentication and authorization, and client integration step by step. Through &hellip; \ub354 \ubcf4\uae30 &quot;Spring Boot Backend Development Course, Blog Creation Example, Preparing for a Project&quot;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/atmokpo.com\/w\/33115\/\" \/>\n<meta property=\"og:site_name\" content=\"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\" \/>\n<meta property=\"article:published_time\" content=\"2024-11-01T09:13:52+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-11-01T11:28:54+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\/33115\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/atmokpo.com\/w\/33115\/\"},\"author\":{\"name\":\"root\",\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/person\/91b6b3b138fbba0efb4ae64b1abd81d7\"},\"headline\":\"Spring Boot Backend Development Course, Blog Creation Example, Preparing for a Project\",\"datePublished\":\"2024-11-01T09:13:52+00:00\",\"dateModified\":\"2024-11-01T11:28:54+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/atmokpo.com\/w\/33115\/\"},\"wordCount\":513,\"publisher\":{\"@id\":\"https:\/\/atmokpo.com\/w\/#organization\"},\"articleSection\":[\"Spring Boot backend development\"],\"inLanguage\":\"ko-KR\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/atmokpo.com\/w\/33115\/\",\"url\":\"https:\/\/atmokpo.com\/w\/33115\/\",\"name\":\"Spring Boot Backend Development Course, Blog Creation Example, Preparing for a Project - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\",\"isPartOf\":{\"@id\":\"https:\/\/atmokpo.com\/w\/#website\"},\"datePublished\":\"2024-11-01T09:13:52+00:00\",\"dateModified\":\"2024-11-01T11:28:54+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/atmokpo.com\/w\/33115\/#breadcrumb\"},\"inLanguage\":\"ko-KR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/atmokpo.com\/w\/33115\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/atmokpo.com\/w\/33115\/#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, Preparing for a Project\"}]},{\"@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, Preparing for a Project - \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\/33115\/","og_locale":"ko_KR","og_type":"article","og_title":"Spring Boot Backend Development Course, Blog Creation Example, Preparing for a Project - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","og_description":"This course guides you through the process of creating a simple blog using Spring Boot. Spring Boot is a framework developed in Java that helps you build web applications easily and quickly. In this course, you will cover project setup, database configuration, RESTful API implementation, authentication and authorization, and client integration step by step. Through &hellip; \ub354 \ubcf4\uae30 \"Spring Boot Backend Development Course, Blog Creation Example, Preparing for a Project\"","og_url":"https:\/\/atmokpo.com\/w\/33115\/","og_site_name":"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","article_published_time":"2024-11-01T09:13:52+00:00","article_modified_time":"2024-11-01T11:28:54+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\/33115\/#article","isPartOf":{"@id":"https:\/\/atmokpo.com\/w\/33115\/"},"author":{"name":"root","@id":"https:\/\/atmokpo.com\/w\/#\/schema\/person\/91b6b3b138fbba0efb4ae64b1abd81d7"},"headline":"Spring Boot Backend Development Course, Blog Creation Example, Preparing for a Project","datePublished":"2024-11-01T09:13:52+00:00","dateModified":"2024-11-01T11:28:54+00:00","mainEntityOfPage":{"@id":"https:\/\/atmokpo.com\/w\/33115\/"},"wordCount":513,"publisher":{"@id":"https:\/\/atmokpo.com\/w\/#organization"},"articleSection":["Spring Boot backend development"],"inLanguage":"ko-KR"},{"@type":"WebPage","@id":"https:\/\/atmokpo.com\/w\/33115\/","url":"https:\/\/atmokpo.com\/w\/33115\/","name":"Spring Boot Backend Development Course, Blog Creation Example, Preparing for a Project - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","isPartOf":{"@id":"https:\/\/atmokpo.com\/w\/#website"},"datePublished":"2024-11-01T09:13:52+00:00","dateModified":"2024-11-01T11:28:54+00:00","breadcrumb":{"@id":"https:\/\/atmokpo.com\/w\/33115\/#breadcrumb"},"inLanguage":"ko-KR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/atmokpo.com\/w\/33115\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/atmokpo.com\/w\/33115\/#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, Preparing for a Project"}]},{"@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\/33115","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=33115"}],"version-history":[{"count":1,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/posts\/33115\/revisions"}],"predecessor-version":[{"id":33116,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/posts\/33115\/revisions\/33116"}],"wp:attachment":[{"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/media?parent=33115"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/categories?post=33115"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/tags?post=33115"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}