我使用Martini框架,我有一些markdown文件,我想在tmpl/html模板中将其渲染为HTML.
降价文件如下:
title: A Test Demo
---
##ABC
> 123
Run Code Online (Sandbox Code Playgroud)
和模板文件如下:
<head>
<title>{{name}}</title>
</head>
<body>
<h2>{{abc}}</h2>
<blockquote>
<p>{{xyz}}</p>
</blockquote>
</body>
Run Code Online (Sandbox Code Playgroud)
我使用blackfriday解析markdown和return []byte
类型,下一步我想将markdown文件渲染到这个模板并将每个块放到正确的位置,那么我该怎么做呢?或者用任何方式更好地做到这一点?
我有一个像这样的应用程序:
io.of('/hello').on('connection', function(socket) {
socket.emit('world', {});
});
app.post('/', function *(next) {
console.log("At here......");
var pushMessage = (yield parse.json(this));
console.log(pushMessage);
if(flag !== 0) {
// io.of('/hello/').emit('world', pushMessage);
io.sockets.emit('world', pushMessage);
} else {
console.log("Do Nothing");
}
});
Run Code Online (Sandbox Code Playgroud)
它收到一个http请求并发出一个事件.当我使用io.sockets.emit时它运行良好,但是当我用'io.of('hello')指定一个命名空间时,发出'它'不起作用,为什么?
我的客户端是这样的:
var socket = io.connect('http://localhost:3000', {
'reconnection delay': 100,
'reconnection limit': 100,
'max reconnection attempts': 10
});
//server side use io.sockets.emit
socket.on('world', function(data) {
alert(data.a);
});
//if server side use io.of('/hello/').emit
//socket.of('/hello/').on('world', function(data) {
// alert(data.a);
//});
Run Code Online (Sandbox Code Playgroud) 我最近将一个json消息解析为结构数组,如下所示:
type Fruit struct {
Number string
Type string
}
type Person struct {
Pid string
Fruits []Fruit
}
func main() {
var p Person
str := `{"pid":"123","fruits":[{"number":"10","type":"apple"},{"number":"50","type":"cherry"}]}`
json.Unmarshal([]byte(str), &p)
//loop struct array and insert into database
stmt, err := tx.Prepare(`insert into empi_credentials(PID, type, num) values(?, ?, ?)`)
if err != nil {
panic(err.Error())
}
defer stmt.Close()
for x := range p.Fruits {
if _, err = stmt4.Exec(string(i), x.Type, x.Number); err != nil {
log.Println("stmt1.Exec: ", err.Error())
return
}
} …
Run Code Online (Sandbox Code Playgroud) 我的API服务器接受post请求,请求体是JSON,所以我创建两个struct对象来接受JSON字符串并将其持久化到database.But每次我接受一个请求我需要一遍又一遍地创建struct对象,我试着清除结构而不是重新创建它.演示代码如下:
//The two struct
type Card struct {
Number string
Type string
}
type Person struct {
Name string
Cards []Card
}
var p Person
//parse JSON to the struct object
func init() {
str := `{"name":"aaa","cards":[{"number":"1","type":"visa"},{"number":"2","type":"mastercard"}]}`
json.Unmarshal([]byte(str), &p)
}
func PersistToDatabase() {
var err error
tx, err := db.Begin()
if err != nil {
return
}
defer func() {
if err != nil && tx != nil {
if err := tx.Rollback(); err != nil {
return
}
} …
Run Code Online (Sandbox Code Playgroud) go ×3
struct ×2
for-loop ×1
html ×1
markdown ×1
martini ×1
node.js ×1
optimization ×1
performance ×1
render ×1
slice ×1
socket.io ×1
transactions ×1