|
@@ -5,6 +5,7 @@ import (
|
|
|
"net/http"
|
|
|
"qfw/util"
|
|
|
elastic "qfw/util/elastic"
|
|
|
+ "qfw/util/redis"
|
|
|
"regexp"
|
|
|
"strings"
|
|
|
"sync"
|
|
@@ -15,7 +16,7 @@ import (
|
|
|
|
|
|
type Content struct {
|
|
|
*xweb.Action
|
|
|
- article xweb.Mapper `xweb:"/article/(.*).html"`
|
|
|
+ article xweb.Mapper `xweb:"/open/article/(.*).html"`
|
|
|
}
|
|
|
|
|
|
var regex = regexp.MustCompile("(Android|Mobile)")
|
|
@@ -30,11 +31,18 @@ func (c *Content) Article(id string) {
|
|
|
defer util.Catch()
|
|
|
client := c.Header("User-Agent")
|
|
|
c.Request.Proto = GetIp(c.Request) //ip
|
|
|
+ var data map[string]interface{}
|
|
|
addLog(c.Request)
|
|
|
bm := false //访问日志
|
|
|
bm = regex.MatchString(client)
|
|
|
sid_openid := util.DecodeArticleId2ByCheck(id)[0] //解密id
|
|
|
- data := *elastic.GetByIdField("bidding", "bidding", sid_openid, `"detail","title","projectname","publishtime"`)
|
|
|
+ res := redis.Get(REDISDB, "jyoadetail_"+sid_openid)
|
|
|
+ if res == nil || res == "" {
|
|
|
+ data = *elastic.GetByIdField("bidding", "bidding", sid_openid, `"detail","title","projectname","publishtime"`)
|
|
|
+ redis.Put(REDISDB, "jyoadetail_"+sid_openid, data, 0)
|
|
|
+ } else {
|
|
|
+ data = *util.ObjToMap(res)
|
|
|
+ }
|
|
|
timeF := data["publishtime"].(float64)
|
|
|
time := time.Unix(int64(timeF), 0).Format("2006-01-02 15:04")
|
|
|
detail := strings.Replace(util.ObjToString(data["detail"]), " ", "", -1)
|