Πώς να δημιουργήσετε έναν βασικό διακομιστή ιστού χρησιμοποιώντας το Go

Πώς να δημιουργήσετε έναν βασικό διακομιστή ιστού χρησιμοποιώντας το Go

Η Go είναι μια ενδιαφέρουσα γλώσσα προγραμματισμού για την κατασκευή σύγχρονων εφαρμογών Ιστού καθώς και λογισμικού συστήματος. Δημιούργησε τεράστιο buzz μετά την κυκλοφορία του και εξουσιοδοτεί υπηρεσίες όπως το Docker, το Kubernetes, το Terraform, το Dropbox και το Netflix .

Επιπλέον, η ισχυρή συλλογή ενσωματωμένων πακέτων του Go το καθιστά εξαιρετική επιλογή για προγραμματισμό ιστού. Αυτό το άρθρο θα σας δείξει πώς να γράψετε έναν βασικό διακομιστή ιστού στο Go.

Εισαγάγετε τα απαραίτητα πακέτα

Το πακέτο net/HTTP παρέχει όλα όσα χρειάζονται για τη δημιουργία ενός διακομιστή web και ενός πελάτη. Αυτό το πακέτο παρουσιάζει μερικές χρήσιμες λειτουργίες για το χειρισμό του προγραμματισμού Ιστού.

Μπορείτε να το εισαγάγετε προσθέτοντας την παρακάτω γραμμή στην αρχή του πηγαίου κώδικα:

import "net/http"

Το άρθρο θα χρησιμοποιήσει επίσης το πακέτο fmt για τη μορφοποίηση συμβολοσειρών και το πακέτο καταγραφής για τη διαχείριση σφαλμάτων. Μπορείτε να τα εισαγάγετε μεμονωμένα όπως φαίνεται παραπάνω ή να εισαγάγετε όλα τα πακέτα χρησιμοποιώντας μια ενιαία δήλωση εισαγωγής:

import (
"fmt"
"log"
"net/http"
)

Μπορείτε να προχωρήσετε στη σύνταξη της κύριας λειτουργίας αφού εισάγετε τα απαραίτητα πακέτα. Προχωρήστε και αποθηκεύστε το αρχείο προέλευσης με την επέκταση .go . Εάν χρησιμοποιείτε το Vim , χρησιμοποιήστε την παρακάτω εντολή για αποθήκευση και έξοδο από το Vim:

:wq server.go

Γράψτε την κύρια συνάρτηση

Τα προγράμματα Go βρίσκονται απευθείας στην κύρια συνάρτηση, που εύστοχα ονομάζεται "κύρια". Θα χρειαστεί να πραγματοποιήσετε μια κλήση διακομιστή εδώ. Προσθέστε τις ακόλουθες γραμμές στον πηγαίο κώδικα και δείτε τι κάνουν:

func main() {
http.HandleFunc("/", index)
log.Fatal(http.ListenAndServe(":8080", nil))
}

Το παράδειγμα είναι ο καθορισμός της κύριας συνάρτησης χρησιμοποιώντας τη λέξη-κλειδί func . Το Go έχει αυστηρούς κανόνες σχετικά με την τοποθέτηση του ανοιγόμενου σιδερώματος, οπότε βεβαιωθείτε ότι το στήριγμα εκκίνησης βρίσκεται στη σωστή γραμμή. Η πρώτη δήλωση στο main ορίζει ότι όλα τα αιτήματα Ιστού προς τη διαδρομή ρίζας ( "/" ) θα αντιμετωπίζονται με ευρετήριο, μια συνάρτηση του τύπου http.HandlerFunc .

Η δεύτερη γραμμή ξεκινά τον διακομιστή web μέσω της συνάρτησης http.ListenAndServe . Σηματοδοτεί τον διακομιστή να ακούει συνεχώς τα εισερχόμενα αιτήματα HTTP στη θύρα 8080 του διακομιστή. Η δεύτερη παράμετρος αυτής της συνάρτησης χρειάζεται για να μπλοκάρει το πρόγραμμα μέχρι το τέλος.

Δεδομένου ότι το http.ListenAndServe επιστρέφει πάντα ένα σφάλμα, το παράδειγμα αναδιπλώνει αυτήν την κλήση μέσα σε ένα log.Fatal κλήση . Αυτή η δήλωση καταγράφει τυχόν μηνύματα σφάλματος που δημιουργούνται από την πλευρά του διακομιστή.

Εφαρμογή συναρτήσεων επεξεργασίας

Όπως μπορείτε να δείτε, η κύρια συνάρτηση καλεί το ευρετήριο συνάρτησης χειριστή για να χειριστεί αιτήματα πελατών. Ωστόσο, το παράδειγμα δεν έχει ακόμη ορίσει αυτήν τη λειτουργία για τον διακομιστή του.

Ας προσθέσουμε τις απαραίτητες δηλώσεις για να κάνουμε τη συνάρτηση ευρετηρίου χρησιμοποιήσιμη:

func index(w http.ResponseWriter, r *http.Request) {
fmt.Fprintf(w, "Hi there, welcome to %s!", r.URL.Path[1:])
}

Αυτή η συνάρτηση παίρνει δύο διαφορετικά ορίσματα τύπου http.ResponseWriter και http.Request . Η παράμετρος http.ResponseWriter περιέχει την απάντηση του διακομιστή στο εισερχόμενο αίτημα, με τη μορφή αντικειμένου http.Request .

Η συνάρτηση Fprintf από το πακέτο fmt χρησιμοποιείται για την εμφάνιση και το χειρισμό συμβολοσειρών κειμένου. Το άρθρο το χρησιμοποιεί αυτό για να εμφανίσει την απάντηση του διακομιστή σε αιτήματα ιστού. Τέλος, το στοιχείο r.URL.Path[1:] χρησιμοποιείται για την ανάκτηση δεδομένων μετά τη διαδρομή ρίζας.

Προσθέστε όλα τα υπόλοιπα μέρη

Ο διακομιστής ιστού Go σας θα είναι έτοιμος μόλις προσθέσετε όλα τα υπόλοιπα στοιχεία. Ο κώδικας θα μοιάζει με αυτό:

import (
"fmt"
"log"
"net/http"
)
func index(w http.ResponseWriter, r *http.Request) {
fmt.Fprintf(w, "Hi there, welcome to %s!", r.URL.Path[1:])
}
func main() {
http.HandleFunc("/", index)
log.Fatal(http.ListenAndServe(":8080", nil))
}

Η πρώτη γραμμή απαιτείται για τη μεταγλώττιση αυτού του κώδικα διακομιστή ιστού Go ως εκτελέσιμο αρχείο.

Πώς να δημιουργήσετε έναν βασικό διακομιστή ιστού χρησιμοποιώντας το Go

Μεταγλωττίστε αυτόν τον κώδικα διακομιστή ιστού Go ως εκτελέσιμο αρχείο


Εγκαταστήστε δυναμικές οθόνες και κινούμενες ταπετσαρίες στα Windows

Εγκαταστήστε δυναμικές οθόνες και κινούμενες ταπετσαρίες στα Windows

Στο λειτουργικό σύστημα Windows Vista της Microsoft, το DreamScene επέτρεψε τη ρύθμιση δυναμικού φόντου για υπολογιστές, αλλά οκτώ χρόνια αργότερα, δεν είναι ακόμα διαθέσιμο στα Windows 10. Γιατί αυτό το έθιμο αντιπροσωπεύει μια επιστροφή στο παρελθόν με τα χρόνια, και τι μπορούμε να κάνουμε για να το αλλάξουμε αυτό;

Πώς να συνδέσετε το δίκτυο μεταξύ 2 φορητών υπολογιστών χρησιμοποιώντας ένα καλώδιο δικτύου

Πώς να συνδέσετε το δίκτυο μεταξύ 2 φορητών υπολογιστών χρησιμοποιώντας ένα καλώδιο δικτύου

Αν θέλουμε να συνδέσουμε δύο φορητούς υπολογιστές στο δίκτυο, μπορούμε να χρησιμοποιήσουμε ένα καλώδιο δικτύου και μετά να αλλάξουμε τις διευθύνσεις IP των δύο υπολογιστών και τέλος.

Τρόπος επιδιόρθωσης Δεν έχετε άδεια αποθήκευσης σε αυτήν τη θέση στα Windows

Τρόπος επιδιόρθωσης Δεν έχετε άδεια αποθήκευσης σε αυτήν τη θέση στα Windows

Όταν τα Windows εμφανίζουν το σφάλμα "Δεν έχετε άδεια αποθήκευσης σε αυτήν τη θέση", αυτό θα σας εμποδίσει να αποθηκεύσετε αρχεία στους επιθυμητούς φακέλους.

Κορυφαίο το καλύτερο δωρεάν και επί πληρωμή λογισμικό διακομιστή Syslog για Windows

Κορυφαίο το καλύτερο δωρεάν και επί πληρωμή λογισμικό διακομιστή Syslog για Windows

Ο διακομιστής Syslog είναι ένα σημαντικό μέρος του οπλοστασίου ενός διαχειριστή IT, ειδικά όταν πρόκειται για τη διαχείριση αρχείων καταγραφής συμβάντων σε μια κεντρική τοποθεσία.

Τι είναι το Σφάλμα 524 Παρουσιάστηκε ένα χρονικό όριο λήξης και πώς να διορθώσετε το σφάλμα

Τι είναι το Σφάλμα 524 Παρουσιάστηκε ένα χρονικό όριο λήξης και πώς να διορθώσετε το σφάλμα

Σφάλμα 524: Παρουσιάστηκε ένα χρονικό όριο λήξης είναι ένας κωδικός κατάστασης HTTP για το Cloudflare που υποδεικνύει ότι η σύνδεση με τον διακομιστή έκλεισε λόγω χρονικού ορίου.

Τι είναι το σφάλμα 0x80070570; Πώς να διορθώσετε αυτό το σφάλμα;

Τι είναι το σφάλμα 0x80070570; Πώς να διορθώσετε αυτό το σφάλμα;

Ο κωδικός σφάλματος 0x80070570 είναι ένα κοινό μήνυμα σφάλματος σε υπολογιστές, φορητούς υπολογιστές και tablet με λειτουργικό σύστημα Windows 10. Ωστόσο, εμφανίζεται επίσης σε υπολογιστές με Windows 8.1, Windows 8, Windows 7 ή παλαιότερες εκδόσεις.

Οδηγίες για τη διόρθωση του σφάλματος μπλε οθόνης ΣΦΑΛΜΑ ΣΕΛΙΔΑΣ ΣΤΗΝ ΠΕΡΙΟΧΗ ΜΗ ΣΕΛΙΔΑΣ ή ΣΤΟΠ 0x00000050

Οδηγίες για τη διόρθωση του σφάλματος μπλε οθόνης ΣΦΑΛΜΑ ΣΕΛΙΔΑΣ ΣΤΗΝ ΠΕΡΙΟΧΗ ΜΗ ΣΕΛΙΔΑΣ ή ΣΤΟΠ 0x00000050

Το σφάλμα μπλε οθόνης θανάτου BSOD PAGE_FAULT_IN_NONPAGED_AREA ή STOP 0x00000050 είναι ένα σφάλμα που εμφανίζεται συχνά μετά την εγκατάσταση ενός προγράμματος οδήγησης συσκευής υλικού ή μετά την εγκατάσταση ή την ενημέρωση ενός νέου λογισμικού και σε ορισμένες περιπτώσεις η αιτία είναι ότι το σφάλμα οφείλεται σε κατεστραμμένο διαμέρισμα NTFS.

Τι πρέπει να κάνετε όταν λαμβάνετε εσωτερικό σφάλμα προγράμματος προγραμματισμού βίντεο;

Τι πρέπει να κάνετε όταν λαμβάνετε εσωτερικό σφάλμα προγράμματος προγραμματισμού βίντεο;

Το εσωτερικό σφάλμα προγράμματος προγραμματισμού βίντεο είναι επίσης ένα θανατηφόρο σφάλμα μπλε οθόνης, αυτό το σφάλμα εμφανίζεται συχνά στα Windows 10 και στα Windows 8.1. Αυτό το άρθρο θα σας δείξει μερικούς τρόπους για να διορθώσετε αυτό το σφάλμα.

Πώς να αποτρέψετε την εκκίνηση του Epic Launcher με τα Windows

Πώς να αποτρέψετε την εκκίνηση του Epic Launcher με τα Windows

Για να κάνετε την εκκίνηση των Windows 10 πιο γρήγορη και να μειώσετε τον χρόνο εκκίνησης, ακολουθούν τα βήματα που πρέπει να ακολουθήσετε για να καταργήσετε το Epic από την εκκίνηση των Windows και να αποτρέψετε την εκκίνηση του Epic Launcher με τα Windows 10.

3 καλύτεροι τρόποι αποθήκευσης αρχείων στην επιφάνεια εργασίας

3 καλύτεροι τρόποι αποθήκευσης αρχείων στην επιφάνεια εργασίας

Δεν πρέπει να αποθηκεύετε αρχεία στην επιφάνεια εργασίας. Υπάρχουν καλύτεροι τρόποι για να αποθηκεύετε αρχεία υπολογιστή και να διατηρείτε την επιφάνεια εργασίας σας τακτοποιημένη. Το παρακάτω άρθρο θα σας δείξει πιο αποτελεσματικά μέρη για την αποθήκευση αρχείων στα Windows 10.