>웹 프론트엔드 >JS 튜토리얼 >Golang+Nodejs의 프론트엔드와 백엔드 개발 분리에 대한 자세한 설명

Golang+Nodejs의 프론트엔드와 백엔드 개발 분리에 대한 자세한 설명

php中世界最好的语言
php中世界最好的语言원래의
2018-03-12 09:51:205562검색

이번에는 Golang+Nodejs의 프론트엔드와 백엔드 개발 분리에 대해 자세히 설명하겠습니다. Golang+Nodejs를 사용하여 프론트엔드와 백엔드 개발을 분리할 때 주의사항은 무엇인가요? 실제 사례이므로 살펴보겠습니다. 1. 백엔드 서버 쓰기

코드:

package mainimport (    "github.com/hprose/hprose-golang/rpc"//<===hprose
    "fmt"
    "database/sql"
    _ "github.com/go-sql-driver/mysql"//<===mysql驱动
    "log")func checkErr(err error) {    if err != nil {
        panic(err)
    }
}
func mysqlTestConnect(str string) string{//数据库查询
    fmt.Print(str)
    db, err := sql.Open("mysql", "root:换成你数据库的密码@tcp(localhost:3306)/test")    if err != nil {        log.Fatalf("Open database error: %s\n", err)
    }
    defer db.Close()
    err = db.Ping()
    checkErr(err)
    rows, err := db.Query("SELECT * FROM t_test")
    checkErr(err)
    var tmp string=""
    for rows.Next() {
        var id int
        var name string
        rows.Columns()
        err = rows.Scan(&id, &name)
        checkErr(err)
        tmp=tmp+"id:"+string(id)+"  name:"+name+"<br/>"
    }    return  tmp
}
func main(){
    server := rpc.NewTCPServer("tcp4://0.0.0.0:10010/")//创建服务具体
    server.AddFunction("客户端调用函数名", mysqlTestConnect)//添加访问函数
    server.Start()//启动}

2. 프론트엔드 서버 쓰기

코드:

const koa = require(&#39;koa&#39;);//这里以koa 框架为例const app = new koa();var hprose = require("hprose");//hprosevar client = hprose.Client.create("tcp4://127.0.0.1:10010/", [&#39;客户端调用函数名&#39;]);//创建客户端连接app.use(function* () {    var dt= yield new Promise(function (resolve) {
        client.客户端调用函数名("请求参数", function (result) {
            resolve(result);
        })
    });    this.type = &#39;text/html;charset=utf-8&#39;;    this.body = dt;
});
app.listen(3000);

3. 효과

주소 127.0.0.1:3000

Golang+Nodejs의 프론트엔드와 백엔드 개발 분리에 대한 자세한 설명 이것을 읽어보세요 사례 당신은 이 방법을 마스터했습니다. 더 흥미로운 정보를 보려면 PHP 중국어 웹사이트의 다른 관련 기사를 주목하세요!

관련 읽기:

python3과 JS의 차이점은 무엇입니까


H5에서 이미지 업로드 미리 보기 구성 요소를 만드는 방법


s-xlsx를 사용하여 Excel 파일 가져오기 및 내보내기를 구현하는 방법


js/css JS 플러그인을 동적으로 로드

위 내용은 Golang+Nodejs의 프론트엔드와 백엔드 개발 분리에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
이전 기사:vue2+kendo의 UI 통합다음 기사:vue2+kendo의 UI 통합