Skip to main content

4 posts tagged with "nodejs"

View All Tags

· One min read

16/07/2022 - Aula 4 de Node.js (Presencial)

Ultima aula de Node.js, começamos as 08:30h, baixando o projeto de Angular feito aqui na pós, app-unipar4, para podermos integrar com o backend em Node.js.

Alguns ajustes tem que ser feitos para o projeto para com que ele funcione, como ajustes das rotas e formas de autenticação.

Depois o professor passou o trabalho e ficou disponível para tirar algumas dúvidas.

Trabalho

As informações do trabalho estão na pagina da disciplina. Link

· One min read

02/07/2022 - Aula 3 de Node.js (Presencial)

Chegamos na Unipar e a sala estava trancada, após uns 10 minutos, conseguimos entrar na sala. O Professor Marlon passou uma atividade para criamos uma rota para a criação de um novo usuário, com as rotas GET, POST, PUT e DELETE.

Para o usuário, vamos utilizar criptografia, e precisamos dos pacotes abaixo:

npm install --save bcrypt
npm install --save jsonwebtoken
npm install --save passport
npm install --save passport-local

Implementamos a criptografia e o login com o passport, utilizando JWT para controlar o acesso a rotas.

Vamos trabalhar com documentação do projeto, para isso vamos utilizar o pacote swagger.

    npm install --save swagger-ui-express
npm install --save swagger-jsdoc

Criamos a documentação do projeto para alguns dos endpoints e testamos como utilizar o swagger.

Com isso finalizamos a aula de hoje.

· One min read

25/06/2022 - Aula 2 de Node.js (Presencial)

O Professor Marlon, chegou atrasado 10 minutos. Começou a aula as 08:40h, após o professor enviar o projeto para o github, o link é aula-node-posunipar.

Começamos a aula instalando um novo pacote para o mongo

npm install --save mongoose

Seguimos a aula fazendo com que os metodos GET, PATCH e DELETE funcionem com o banco de dados MongoDB

Teve o intervalo as 12h até as 13:30h.

Continuamos mudando as rotas para a parte das ordens

Adicionamos um novo pacote

npm install --savel multer

Utilizamos o multer para fazer o upload de arquivos

Com isso finalizamos a aula de hoje.

· 3 min read

11/06/2022 - Aula 1 de Node.js (Presencial)

O Professor Marlon, começou a aula as 08:30h, por ser a primeira aula, teve alguns problemas técnicos em relação a projeto e internet na Unipar, ficamos aguardando sem fazer nada até as 08:45h, pois professor estava aguardando outros alunos chegarem.

Começamos vendo sobre a origem da linguagem utilizada, o JavaScript, que rodava em navegadores, e a ideia do Node.js é que seja possível rodar JavaScript fora do navegador, ou seja, em um servidor ou em um computador desktop, mas seu maior foco é o desenvolvimento de aplicações backend.

Para isso acontecer, o Node se utiliza o Chrome V8 Engine, que é um motor de JavaScript. Vamos utilizar esses recursos para poder criar uma API RESTful.

Para seguir a aula, você deve instalar o Node.js no seu computador, baixando a ultima versão do Node.js no site nodejs.org. Como editor de texto, você deve utilizar o Visual Studio Code. Com isso, rodamos o comando para iniciar o projeto.

npm init

Depois de criar o projeto, vamos instalar o módulo express, que é um módulo que permite que você crie aplicações web.

npm install --save express

Criamos dois arquivos, um server.js e app.js.

server.js
const http = require('http')
const app = require('./app')

const port = process.env.PORT || 4000

const server = http.createServer(app)

server.listen(port)
app.js
const express = require('express')

const app = express()

app.use('/api', (req, res, next) => {
res.status(200).json({
message: 'Hello word!'
})
})

module.exports = app

... e após rodar o comando node server.js e acessar o endereço http://localhost:4000/api, você verá o retorno da mensagem Hello word!.

A aula para por um momento, 30 minutos de intervalo até as 10:30h.

Voltamos fazer uma nova rota para produtos, que será a rota /products.

\api\routes\products.js
const express = require('express')
const router = express.Router()

router.get('/', (req, res, next) => {
res.status(200).json({
message: 'Handling GET requests to /products'
})
})

router.post('/', (req, res, next) => {
res.status(201).json({
message: 'Handling POST requests to /products'
})
})

router.get('/:productId', (req, res, next) => {
const id = req.params.productId
if (id > 0) {
res.status(200).json({
message: 'Handling GET requests to /products/' + id,
id: id
})
} else {
res.status(404).json({
message: 'Product not found'
})
}
})

module.exports = router

A aula para para o almoço, as 12h, e voltamos as 13:30h.

Fizemos mais uma classe igual a do produto, chamada ordens.

Depois disso instalamos o nodemon, que é um serviço que monitora o nosso projeto e reinicia o servidor quando houver alguma alteração.

npm install --save nodemon

Criamos também no arquivo package.json o comando para rodar o servidor.

...
"version": "1.0.0",
"description": "Exemplo de aula para o curso de NodeJS",
"main": "index.js",
"scripts": {
"start": "nodemon server.js"
}
...
"keywords": [
"node",
...

Baixamos também o morgan, que é um módulo que permite que você veja o que está acontecendo no servidor.

npm install --save morgan

E vamos baixar o body-parser, que é um módulo que permite que você trabalhe com o corpo da requisição.

npm install --save body-parser

Depois de instalar esses pacotes, fizemos alguns ajustes para entender como que a requisição vem até a aplicação. Além disso, configuramos uma regra sobre cors.

Instalamos o MongoDB, e a aula acabou as 17h.