Skip to content

Commit

Permalink
Construindo API - Método POST
Browse files Browse the repository at this point in the history
  • Loading branch information
wesleygado committed Oct 17, 2024
1 parent f2324a0 commit cbd8cb1
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 2 deletions.
1 change: 1 addition & 0 deletions .tw-db/api/posts.db
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
{"title":"Comandos do Git que você precisa conhecer - Parte 1","description":"Aprenda os comandos essenciais para você dominar o git","picture":"https://dkrn4sk0rn31v.cloudfront.net/uploads/2019/07/29063506/git-1.png","slug":"comandos-do-git-que-voce-precisaeconhecer-parte-1","content":"<p>Olá Web Developers! Hoje trago aqui comandos muito úteis ao se trabalhar com Git que todo mundo precisa saber para facilitar o trabalho. Nesse primeiro post veremos os comandos para repositórios locais. Na Parte 2 desse post veremos os comandos para você dominar Repositórios Remotos. Se você ainda não trabalha com Git, veja nosso post sobre Primeiros passos com o Git. </p> <h3>1 - Iniciando um Repositório</h3> <p> Todo repositório Git armazena as informações dentro de uma pasta oculta chamada “/.git”. Para que os arquivos de uma pasta possam ser versionados pelo Git, é preciso iniciar o repositório. Basta executar o comando abaixo: </p> <h3>2 - Apagando um repositório</h3> <p> Há momentos em que não queremos apagar nossos arquivos, mas queremos remover as informações sobre aquele repositório criado com o $ git init (talvez criar um repositório novo com os mesmos arquivos). Para isso não usamos o Git. Lembre-se que um repositório Git armazena as informações dentro de uma pasta oculta chamada /.git. Então basta apagar esta pasta oculta que o seu atual diretório deixará de ser um repositório.</p>","_id":"KixBY7wJ3u5zBFXS"}
{"title":"10 Truques do NPM - Você conhece todos?","description":"Conheça os principais truques do NPM ","picture":"https://dkrn4sk0rn31v.cloudfront.net/uploads/2019/07/29063506/git-1.png","content":"<p>Saiba dos 10 truques mais utilizados do NPM</p>","slug":"10-truques-do-npm---voc-conhece-todos","_id":"CMuL1HVMCnaxDf2y"}
19 changes: 17 additions & 2 deletions src/app/api/posts/route.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { BlogPost } from "@/data/@types/BlogPostInterface";
import axios from "axios";
import next from "next";
import { NextRequest, NextResponse } from "next/server";

export const PostsApis = axios.create({
Expand All @@ -14,7 +14,22 @@ export async function GET(req: NextRequest) {
const posts = await PostsApis.get("/");
return NextResponse.json(posts.data, { status: 200 });
} catch (error) {
return NextResponse.json({ error: "Falha ao carregar posts"}, { status: 500 });
return NextResponse.json({ error: "Falha ao carregar posts" }, { status: 500 });
}
}

export async function POST(req: NextRequest) {
try {
const body = await req.json();
const newPost = body as BlogPost;
newPost.slug = newPost.title
.toLowerCase()
.replace(/\s/g, '-')
.replace(/[^\w-]+/g, '');

const createdPost = await PostsApis.post('/', newPost);
return NextResponse.json(createdPost.data, { status: 201 });
} catch (error) {
return NextResponse.json({ error: "Erro ao cadastrar post" }, { status: 500 })
}
}

0 comments on commit cbd8cb1

Please sign in to comment.