温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

怎么用lua代码实现一个博客系统

发布时间:2021-06-23 14:25:09 来源:亿速云 阅读:167 作者:chen 栏目:大数据

这篇文章主要介绍“怎么用lua代码实现一个博客系统”,在日常操作中,相信很多人在怎么用lua代码实现一个博客系统问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么用lua代码实现一个博客系统”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

EventServer是一款基于libevent的服务器框架,可以应用于web开发,也可以应用于游戏服务器开发。https://www.lua-web.com 就基于EventServer开发的lua博客框架,方便写博客,保存各种转载,新闻采编等, 总共900多行代码,有博客的增删改查功能;有注册,审核功能、登录等功能;百度ueditor编辑器接口的上传图片,下载等。

跟别的luajit框架一样,拥有简单易用,易部署,易维护,性能优越,而且可以使用c/c++各种接口。

除此外,还可以兼容openresty各种库,尤其基于socket的lua库, 比如redis,smtp,luasql

本框架和别的框架最大区别是,不需要修改接口即可使用同步阻塞接口,改成同步非阻塞接口。

数据SQL操作部分接口就是同步阻塞,通过ExecuteSQL委托给其他线程,处理结束后,返回结果。

--登录
 local function http_blog_login(req)
     local buffer = evhttp_get_input_buffers(req)    
     local obj = json.decode(buffer)
     --local context = {title=obj.title, doc=obj.doc}
     print('http_blog_login******************************************************', json.encode(obj))
     
     local sql = [[SELECT * FROM blogs.accounts where account=']].. escape_sql(obj.account)  ..[[';]]
     local ret,rows=ExecuteSQL(THREADID_SQL, sql,true)        
     if not ret then
         print('http_blog_postxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx', rows)
         return
     end
     
     if #rows==0 then        
         print('http_blog_modify******************************************************',res)
         HttpResponeError(req, 1000, GetUtf8ByGBK('账号未注册'))
         return
     end
     
     if rows[1].loginpassword ~= obj.password then
         HttpResponeError(req, 1001, GetUtf8ByGBK('密码错误'))        
         return
     end    
     
     if rows[1].state=='0' then
         HttpResponeError(req, 1002, GetUtf8ByGBK('账号未激活'))        
         return
     end
         
     HttpRespone(req, function(req)
         
         local time = os.time()+60*60*24
         local token = md5.sumhexa(rows[1].userid..MAGIC_CODE..time)
         local cookies = {userid=rows[1].userid, logintime=time, token=token} --'userid='..rows[1].userid..';'..'logintime='..time..';token='..token
         local base64 = ZZBase64.encode(json.encode(cookies))
         local res = json.encode({errcode=0, errmsg=GetUtf8ByGBK('登录成功'), cookie='login='..base64})
         print('http_blog_login******************************************************',res)
         evhttp_add_header(req, 'Content-Type',  "text/json")        
         evhttp_send_reply(req,200,'ok', res)        
     end)    
 end

到此,关于“怎么用lua代码实现一个博客系统”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

lua
AI