Lapis框架如何“接受”和“返回”JSON数据

by 糖果

Lapis可以定义Json格式的路由,Lapis本身,提供了JSON的解析机制,可以用json_params动作装饰器,想请求发过来的json数据,传self.parms变量中,代码如下:

local json_params = require("lapis.application").json_params
app:match("/json", json_params(function(self)
  return self.params.ip
end))

用Curl模拟请求:

$ curl \
  -H "Content-type: application/json" \
  -d '{"ip": "127.0.0.1"}' \
  'https://localhost:8080/json'

返回的JSON数据解析:

<!DOCTYPE HTML><html lang="en"><head><title>Lapis Page</title></head><body>127.0.0.1</body></html>

Lapis返回json数据一目了然,直接指定json关键字,然后赋予一个lua table的数据结构就好,如下:

local lapis = require("lapis")
local app = lapis.Application()

app:get("/", function()
  return "Welcome to Lapis " .. require("lapis.version")
end)

app:get("/world", function()
  return { json = { success = true ip="127.0.0.1" } }
end)

return app

糖果

糖果
LUA从入门到放弃

Tweyseo Walkonluajit 1

# **0. 背景**## **a. 目的**这里主要研究LuaJIT的Trace的相关原理,并且展示如何使用LuaJIT提供的[v.lua](https://github.com/LuaJIT/LuaJIT/blob/master/src/jit/v.lua)和[dump...… Continue reading

Nginx+Lua中文WIKI

Published on March 14, 2019