как реализовать фастхтп фреймворк - PullRequest
0 голосов
/ 13 февраля 2019

Я хочу начать изучение сервера fasthttps по этой ссылке https://github.com/valyala/fasthttp, но я не знаю, как мне реализовать небольшой фрагмент кода в этой среде.Кто-нибудь может сказать мне, что, как я буду реализовывать небольшой кусок кода в этом?пример, пожалуйста.

Код, который я пробовал

package main

import "fmt"

type MyHandler struct {
    foobar string
}

func main() {

    // pass bound struct method to fasthttp
    myHandler := &MyHandler{
        foobar: "foobar",
    }
    fasthttp.ListenAndServe(":8080", myHandler.HandleFastHTTP)

    // pass plain function to fasthttp
    fasthttp.ListenAndServe(":8081", fastHTTPHandler)
}

 // request handler in net/http style, i.e. method bound to MyHandler struct.
 func (h *MyHandler) HandleFastHTTP(ctx *fasthttp.RequestCtx) {
     // notice that we may access MyHandler properties here - see h.foobar.
     fmt.Fprintf(ctx, "Hello, world! Requested path is %q. Foobar is %q",
    ctx.Path(), h.foobar)
}

// request handler in fasthttp style, i.e. just plain function.
func fastHTTPHandler(ctx *fasthttp.RequestCtx) {
    fmt.Fprintf(ctx, "Hi there! RequestURI is %q", ctx.RequestURI())
}

Подскажите, пожалуйста, как я буду реализовывать этот код.

1 Ответ

0 голосов
/ 13 февраля 2019

Этот код работает.Я вставил его в файл .go, добавил:

import "github.com/valyala/fasthttp"

Затем вы должны установить этот пакет, используя go get github.com/valyala/fasthttp или записав файл go.mod, если вы хотите использовать новыйПоддержка модуля.

Затем запустите этот файл и откройте localhost:8080 в браузере.


Может быть, у вас есть более конкретный вопрос?

Как сказал @Volker вкомментарий, для новичков настоятельно рекомендуется придерживаться стандартной библиотеки - net/http в этом случае;Есть способ больше примеров и кодов / руководств, которые вы можете найти, прибегая к помощи, не нужно устанавливать специальные пакеты и т. д.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...