本文整理汇总了Golang中github.com/mischief/govt/vt/vtsrv.Req.RespondWrite方法的典型用法代码示例。如果您正苦于以下问题:Golang Req.RespondWrite方法的具体用法?Golang Req.RespondWrite怎么用?Golang Req.RespondWrite使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/mischief/govt/vt/vtsrv.Req
的用法示例。
在下文中一共展示了Req.RespondWrite方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: Write
func (srv *Grande) Write(req *vtsrv.Req) {
var f *os.File
var n int
s := srv.calcScore(req.Tc.Data)
dname := fmt.Sprintf("%s/%02x/%02x", srv.topDir, s[0], s[1])
err := os.MkdirAll(dname, 0777)
if err != nil {
req.RespondError(err.Error())
return
}
f, err = os.OpenFile(srv.Name(s), os.O_WRONLY|os.O_CREATE|os.O_TRUNC, 0666)
if err != nil {
req.RespondError(err.Error())
return
}
defer f.Close()
n, err = f.Write(req.Tc.Data)
if err != nil {
req.RespondError(err.Error())
return
}
if n != len(req.Tc.Data) {
req.RespondError("short write")
return
}
req.RespondWrite(s)
}
示例2: Write
func (srv *Vtmap) Write(req *vtsrv.Req) {
score := srv.calcScore(req.Tc.Data)
strscore := string([]byte(score))
srv.Lock()
if srv.htbl[strscore] == nil {
block, err := srv.f.WriteBlock(req.Tc.Data)
if err != nil {
srv.Unlock()
req.RespondError(err.Error())
return
}
srv.htbl[strscore] = block
}
srv.Unlock()
req.RespondWrite(score)
}
示例3: Write
func (srv *Vtram) Write(req *vtsrv.Req) {
b := srv.putBlock(req.Tc.Btype, req.Tc.Data)
req.RespondWrite(b.score)
}