Maison  >  Article  >  interface Web  >  Explication détaillée de la séparation du développement front-end et back-end de Golang+Nodejs

Explication détaillée de la séparation du développement front-end et back-end de Golang+Nodejs

php中世界最好的语言
php中世界最好的语言original
2018-03-12 09:51:205500parcourir

Cette fois, je vais vous apporter une explication détaillée de la séparation du développement front-end et back-end à l'aide de Golang+Nodejs Quelles sont les précautions pour utiliser Golang + Nodejs pour séparer le front-end. et développement back-end Voici des cas pratiques, jetons un coup d'oeil.

1. Le serveur backend écrit

code :

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. Le serveur frontend écrit

code :

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. Effet

Le navigateur accède à l'adresse 127.0.0.1:3000

Explication détaillée de la séparation du développement front-end et back-end de Golang+Nodejs

Je pense que vous maîtrisez la méthode après avoir lu le cas dans cet article. des informations plus intéressantes, veuillez faire attention à php Autres articles connexes sur le site Web chinois !

Lecture connexe :

Quelle est la différence entre python3 et JS

Comment créer un composant d'aperçu de téléchargement d'image dans H5

Comment utiliser s-xlsx pour importer et exporter des fichiers Excel

chargement dynamique js/css de JS plug-ins

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Article précédent:intégration ui de vue2+kendoArticle suivant:intégration ui de vue2+kendo