这次给大家带来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('koa');//这里以koa 框架为例const app = new koa();var hprose = require("hprose");//hprosevar client = hprose。
Client。create("tcp4://127。0。0。1:10010/" ['客户端调用函数名']);//创建客户端连接app。use(function* () { var dt= yield new Promise(function (resolve) { client。
客户端调用函数名("请求参数" function (result) { resolve(result); }) }); this。type = 'text/html;charset=utf-8' this。body = dt;});app。
listen(3000);3。效果浏览器访问127。0。0。1:3000地址。