Heim > Backend-Entwicklung > Golang > Golang lernt die Erstellung von Webanwendungen basierend auf Node.js

Golang lernt die Erstellung von Webanwendungen basierend auf Node.js

王林
Freigeben: 2023-06-24 09:34:24
Original
1120 Leute haben es durchsucht

Golang lernt, Webanwendungen auf Basis von Node.js zu erstellen

Mit der rasanten Entwicklung der Internettechnologie werden Webanwendungen nach und nach zu einem wichtigen Schwerpunkt für große Unternehmen und technisches Personal. Als leistungsstarke Programmiersprache wird Golang von immer mehr Menschen nachgefragt. In diesem Artikel wird erläutert, wie Sie mit Golang und Node.js eine einfache Webanwendung erstellen.

1. Umgebungsvorbereitung

Bevor Sie mit dem Erstellen beginnen, müssen Sie die folgenden zwei Umgebungen installieren:

  1. Golang-Umgebung

Laden Sie das Golang-Installationspaket von der offiziellen Website herunter und konfigurieren Sie GOPATH und GOROOT nach der Installation.

  1. Node.js-Umgebung

Laden Sie das Node.js-Installationspaket von der offiziellen Website herunter. Installieren Sie nach der Installation die Express-, EJS- und Body-Parser-Module über das npm-Befehlszeilentool und installieren Sie die MongoDB-Datenbank.

2. Erstellen Sie das Web-Framework.

  1. Initialisieren Sie die Vorlage.

Initialisieren Sie die Vorlage in der Golang-Umgebung über die folgende Befehlszeile:

go mod init {project_name}

wobei {project_name} Ihr Projektname ist. Nach der Ausführung dieses Befehls wird eine go.mod-Datei erstellt, die den folgenden Inhalt enthalten muss:

module {Projektname}

go 1.16

  1. Erstellen Sie die Hauptanwendung.

Erstellen Sie im Projektordner eine Hauptanwendung .go-Datei, die den Einstiegspunkt der Hauptanwendung darstellt.

package main

import (

   "github.com/gin-gonic/gin"
   "net/http"
   "log"
Nach dem Login kopieren

)

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("服务器启动失败")
   }
Nach dem Login kopieren

}

Das Gin-Framework wird hier als Webanwendungs-Framework verwendet. Die Hauptcodelogik besteht darin, „Hello World“ über a zurückzugeben GET-Anfrage auf der Route „String. Verwenden Sie abschließend die Funktion router.Run(), um die Webanwendung zu starten und zu protokollieren, wenn der Start fehlschlägt.

  1. Erstellen Sie eine statische Seite

Erstellen Sie im Projektordner einen öffentlichen Ordner, um statische HTML-Dateien und andere Ressourcendateien zu speichern. Erstellen Sie eine index.html-Datei im öffentlichen Ordner mit dem folgenden Code:


   <head> 
       <title>Golang学习之基于Node.js的Web应用程序搭建</title>
   </head> 
   <body> 
       <h1>Hello World</h1> 
   </body> 
Nach dem Login kopieren

  1. Ansicht erstellen

im Projektordner Erstellen Sie eine Views-Ordner zum Speichern von EJS-Ansichtsdateien und anderen Ressourcendateien. Erstellen Sie eine index.ejs-Datei im Ansichtenordner mit dem folgenden Code:


   <head>
       <title>Golang学习之基于Node.js的Web应用程序搭建</title>
   </head>
   <body>
       <h1>Hello World</h1>
       <p><%= message %></p>
   </body>
Nach dem Login kopieren

  1. Route erstellen

im Projektordner Erstellen Sie eine Routes-Ordner zum Speichern von Routing-Dateien. Erstellen Sie eine index.js-Datei im Routenordner mit dem folgenden Code:

var express = require('express');
var router = express.Router();

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

   res.render('index', { message: '欢迎访问Golang学习之基于Node.js的Web应用程序搭建' });
Nach dem Login kopieren

});

module.exports = router;

Express wird als Webanwendungs-Framework verwendet und die Routing-Funktion verwendet res.render( ) Die Funktion rendert die EJS-Datei und übergibt die Nachricht schließlich an die Ansichtsdatei.

  1. Starten Sie die Anwendung.

Erstellen Sie eine app.js-Datei im Projektordner mit dem folgenden Code:

var express = require('express');
var path = require('path');
var bodyParser = require('body-parser');

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

var app = express();

app.set('views', path.join (__dirname , 'views'));
app.set('view engine', 'ejs');

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

app.use('/', indexRouter);

app.listen(3000, function () {

   console.log('Golang学习之基于Node.js的Web应用程序搭建已启动,端口为3000');
Nach dem Login kopieren

});

Hier wird das Express-Framework verwendet und die View-Engine ist auf EJS eingestellt , während Sie Port 3000 abhören und schließlich die Funktion app.listen() verwenden, um die Anwendung zu starten.

Die endgültige Projektdateistruktur ist wie folgt:

Projektname
├─go.mod
├─main.go
├─app.js
├─public
│ └index.html
├─routes
. │ └Index .js Datenbank

Nachdem Sie eine Verbindung zur Datenbank hergestellt haben, verwenden Sie die folgende Befehlszeile. Erstellen Sie eine Datenbank in der Befehlszeile:

    Verwenden Sie {Datenbankname}
  1. , wobei {Datenbankname} Ihr Datenbankname ist.

Sammlung erstellen

    Erstellen Sie eine Sammlung in der Datenbank:
  1. db.createCollection('{collection_name}')

wobei {collection_name} Ihr Sammlungsname ist. 4. Verarbeiten von Anfragen und Antworten next) {

   └index.ejs
Nach dem Login kopieren

});

Hier wird das Body-Parser-Middleware-Modul verwendet, sodass über req.body in der Routing-Funktion auf die in der POST-Anfrage übermittelten Daten zugegriffen werden kann.

  1. Antwort auf JSON-Daten

Fügen Sie den folgenden Code in der Routing-Funktion hinzu, um auf JSON-Daten zu reagieren:

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

   console.log(req.body);
   // do something
Nach dem Login kopieren

});

Die vom Express-Framework bereitgestellte Funktion res.send() wird hier verwendet, um auf JSON-Daten zu antworten.

5. Zusammenfassung

Das Obige ist der gesamte Prozess der Erstellung einer grundlegenden Webanwendung mit Golang und Node.js. In diesem Prozess verwendeten wir Gin- und Express-Frameworks, die EJS View Template Engine, das Body-Parser-Middleware-Modul und andere Technologien. Gleichzeitig haben wir uns auch mit der MongoDB-Datenbank verbunden und POST-Anfragen und JSON-Datenantworten verarbeitet. Dies bietet eine grundlegende Unterstützung für unsere spätere Webanwendungsentwicklung.

Das obige ist der detaillierte Inhalt vonGolang lernt die Erstellung von Webanwendungen basierend auf Node.js. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage