首页 > 解决方案 > 如何将 API 响应从后端(Go)传递到前端(React)?

问题描述

相当新的后端,特别是在 Go 中。我发现很难理解后端可以/应该如何与前端通信,尤其是在.

例如,我在 Go 中有一个简单的模拟 Books API,我想将来自 Go 的响应传递给 React。

package main

import (...)

var books []Book

func main() {
    // initialize router
    r := mux.NewRouter()

    books = append(books, []Book{
        {
            ID: "1",
            Isbn: "23423",
            Title: "Book 1",
            Author: &Author{
                FirstName: "Nas",
                LastName: "Ahm",
            },
        },
        {
            ID: "2",
            Isbn: "97878",
            Title: "Book 2",
            Author: &Author{
                FirstName: "Has",
                LastName: "Ahm",
            },
        },
    }...)

    // router endpoints
    r.HandleFunc("/api/books", getBooks).Methods("GET")

    log.Fatal(http.ListenAndServe(":3000", r))

}

func getBooks(writer http.ResponseWriter, request *http.Request) {
    writer.Header().Set("Content-Type", "application/json")
    json.NewEncoder(writer).Encode(books)
}

所以问题是,我如何将书籍数据传递给前端(反应)?

标签: reactjsapigo

解决方案


推荐阅读