Maison > développement back-end > Golang > Golang learning Construction d'applications Web basées sur Node.js

Golang learning Construction d'applications Web basées sur Node.js

王林
Libérer: 2023-06-24 09:34:24
original
1122 Les gens l'ont consulté

Golang Learning Création d'applications Web basées sur Node.js

Avec le développement rapide de la technologie Internet, les applications Web deviennent progressivement un domaine d'intervention clé pour les grandes entreprises et le personnel technique. En tant que langage de programmation hautes performances, Golang est recherché par de plus en plus de personnes. Cet article explique comment utiliser Golang et Node.js pour créer une application Web de base.

1. Préparation de l'environnement

Avant de commencer à construire, vous devez installer les deux environnements suivants :

  1. Environnement Golang#🎜 🎜#
Téléchargez le package d'installation de Golang sur le site officiel et configurez GOPATH et GOROOT après l'installation.

    Environnement Node.js
Téléchargez le package d'installation Node.js depuis le site officiel Après l'installation, installez express et ejs via npm. outil de ligne de commande, module body-parser et installez la base de données MongoDB.

2. Construire le framework Web

    Initialiser le modèle
Dans l'environnement Golang, initialisez le modèle via la ligne de commande suivante :

go mod init {project_name}

où {project_name} est le nom de votre projet. Après avoir exécuté cette commande, un fichier go.mod sera créé, qui doit contenir le contenu suivant :

module {project_name}

go 1.16

#🎜 🎜## 🎜🎜#Créer l'application principale

  1. Dans le dossier du projet, créez un fichier main.go, qui est l'entrée de l'application principale.
package main

import (

   "github.com/gin-gonic/gin"
   "net/http"
   "log"
Copier après la connexion

)

func main() {

   router := gin.Default()
   router.GET("/", func(c *gin.Context) {
       c.String(http.StatusOK, "Hello World")
   })
   err := router.Run(":8080")
   if err != nil {
       log.Fatal("服务器启动失败")
   }
Copier après la connexion
#🎜 🎜#}

Le framework gin est utilisé comme framework d'application Web. La logique principale du code est de renvoyer la chaîne "Hello World" via une requête GET sur la route. Enfin, utilisez la fonction router.Run() pour démarrer l'application Web et vous connecter si le démarrage échoue.

Créer une page statique

    Dans le dossier du projet, créez un dossier public pour stocker les fichiers HTML statiques et autres fichiers de ressources. Créez un fichier index.html dans le dossier public avec le code suivant :

   <head> 
       <title>Golang学习之基于Node.js的Web应用程序搭建</title>
   </head> 
   <body> 
       <h1>Hello World</h1> 
   </body> 
Copier après la connexion

< ;


Créer des vues

    Créez un dossier de vues dans le dossier du projet pour stocker les fichiers de vue EJS et d'autres fichiers de ressources. Créez un fichier index.ejs dans le dossier vues avec le code suivant :

   <head>
       <title>Golang学习之基于Node.js的Web应用程序搭建</title>
   </head>
   <body>
       <h1>Hello World</h1>
       <p><%= message %></p>
   </body>
Copier après la connexion

< ;


Créer un itinéraire

    Créez un dossier d'itinéraires dans le dossier du projet pour stocker les fichiers de routage. Créez un fichier index.js dans le dossier routes avec le code suivant :
  1. var express = require('express');
var router = express.Router();#🎜 🎜#

/

OBTENIR la page d'accueil

/
router.get('/', function(req, res, next) {

   res.render('index', { message: '欢迎访问Golang学习之基于Node.js的Web应用程序搭建' });
Copier après la connexion

}) ;module.exports = router;

Express est utilisé comme framework d'application Web, et la fonction de routage utilise la fonction res.render() pour restituer le fichier EJS, ce qui finira par Le message est transmis au fichier de vue.

Lancez l'application

Créez un fichier app.js dans le dossier du projet avec le code suivant :
    #🎜 🎜# var express = require('express');
  1. var path = require('path');
  2. var bodyParser = require('body-parser');

var indexRouter = require('./routes/index');

var app = express();

app.set('views', path.join(__dirname , ' vues'));

app.set('view engine', 'ejs');

app.use(express.json());

app use( express.urlencoded({ extended: false }));

app.use(bodyParser.json());

app.use(bodyParser.urlencoded({ extended: false }));# 🎜🎜 # app.use(express.static(path.join(__dirname, 'public')));

app.use('/', indexRouter);

#🎜🎜 #app .listen(3000, function () {

   console.log('Golang学习之基于Node.js的Web应用程序搭建已启动,端口为3000');
Copier après la connexion

});

Le framework Express est utilisé ici, le moteur d'affichage est défini sur EJS et le port 3000 est surveillé en même temps. Enfin, utilisez la fonction app.listen() pour démarrer l'application.

La structure finale du fichier du projet est la suivante :

project_name

├─go.mod

├─main.go

├─ app.js

├─public

│ └index.html

├─routes

│ └index.js

└─views

   └index.ejs
Copier après la connexion
#🎜 🎜 # 3. Connectez-vous à la base de données


Installer la base de données MongoDB


Après avoir installé la base de données MongoDB, connectez-vous à la base de données via la ligne de commande suivante :
#🎜🎜 #mongo

Créer une base de données
  1. Après vous être connecté à la base de données, créez une base de données via la ligne de commande suivante :

use { database_name}

{database_name} voici le nom de votre base de données.

  1. Créer une collection

Créer une collection dans la base de données :

db.createCollection('{collection_name}' )

Ici, {collection_name} est le nom de votre collection.

    4. Traitement des requêtes et des réponses
Traitement des requêtes POST

Ajoutez ce qui suit dans le routage index.js function Code pour gérer les requêtes POST :

router.post('/post', function(req, res, next) {

   console.log(req.body);
   // do something
Copier après la connexion

});

# 🎜🎜#Le module middleware body-parser est utilisé ici, afin que les données soumises dans la requête POST soient accessibles via req.body dans la fonction de routage.
  1. Réponse aux données JSON

Ajoutez le code suivant dans la fonction de routage pour répondre aux données JSON :

routeur .get('/api', function(req, res, next) {

   res.setHeader('Content-Type', 'application/json');
   res.send({ message: 'Golang学习之基于Node.js的Web应用程序搭建', code: 0 });
Copier après la connexion

});

La fonction res.send() fournie par le framework Express est utilisée ici pour répondre aux données JSON.

5. Résumé

Ce qui précède est l'ensemble du processus de création d'une application Web de base à l'aide de Golang et Node.js. Dans ce processus, nous avons utilisé les frameworks gin et Express, le moteur de modèle de vue EJS, le module middleware d'analyseur de corps et d'autres technologies. Dans le même temps, nous nous sommes également connectés à la base de données MongoDB et avons traité les requêtes POST et les réponses aux données JSON. Cela fournit un support de base pour le développement ultérieur de notre application Web.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal