openresty 前端开发入门三之JSON篇

秦宓
• 阅读 6226

这章主要介绍一下,lua怎么返回一个json字符串,怎么把一个table转成json字符串,又怎么把一个json字符串转成json

其实很简答,直接使用cjson库的encode、decode方法即可

lua/hello.lua

local cjson = require "cjson"

-- 先定义一个json字符串
local json_str = '{"name": "Bruce.Lin", "age": 25}'
-- 这里把它转成对象,然后输出属性
local json = cjson.decode(json_str)
ngx.say("Name = " .. json['name'] .. ", Age = " .. tostring(json['age'])) -- 这里需要把25转成字符串,才能进行字符串拼接

-- 输出 Name = Bruce.Lin, Age = 25

ngx.say('<br/>') -- 换行

-- 接下来我们再把json对象转成json字符串
local json_str2 = cjson.encode(json)
ngx.say(json_str2)

-- 输出{"name":"Bruce.Lin","age":25}

ngx.say('<br/>') -- 换行

local obj = {
    ret = 200,
    msg = "login success"
}

ngx.say(cjson.encode(obj))

ngx.say('<br/>') -- 换行

local obj2 = {}

obj2['ret'] = 200
obj2['msg'] = "login fails"

ngx.say(cjson.encode(obj2))

ok,这里我们就学会的json字符串

示例代码 参见demo3部分

点赞
收藏
评论区
推荐文章
Wesley13 Wesley13
3年前
java将前端的json数组字符串转换为列表
记录下在前端通过ajax提交了一个json数组的字符串,在后端如何转换为列表。前端数据转化与请求varcontracts{id:'1',name:'yanggb合同1'},{id:'2',name:'yanggb合同2'},{id:'3',name:'yang
Jacquelyn38 Jacquelyn38
4年前
2020年前端实用代码段,为你的工作保驾护航
有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )
Wesley13 Wesley13
3年前
GSON搞定任何JSON数据
Gson介绍:GSON是Google提供的用来在Java对象和JSON数据之间进行映射的Java类库。可以将一个Json字符转成一个Java对象,或者将一个Java转化为Json字符串。特点:a、快速、高效    b、代码量少、简洁c、面向对象d、数据传递和解析方便Gson的p
Stella981 Stella981
3年前
Python JSON
JSON函数使用JSON函数需要导入json库:importjson。函数描述json.dumps将Python对象编码成JSON字符串json.loads将已编码的JSON字符串解码为Python对象json.dumpsjson.dumps用于将
Stella981 Stella981
3年前
Gson的学习与使用
Gson介绍:GSON是Google提供的用来在Java对象和JSON数据之间进行映射的Java类库。可以将一个Json字符转成一个Java对象,或者将一个Java转化为Json字符串。特点:a、快速、高效b、代码量少、简洁c、面向对象d、数据传递和解析方便Gson的pom依赖:<d
Wesley13 Wesley13
3年前
JSON笔记
一、1、  JSON.stringify(obj)将JSON转为字符串:      vara{"name":"tom","sex":"男","age":"24"};      varaToStrJSON.stringify(a);      alert(aToStr);//结果:{"na
Stella981 Stella981
3年前
Qt JSON解析生成笔记(把JSON转成一个类对象)
对于这样一段json!复制代码(https://oscimg.oschina.net/oscnet/0e61d87c5c5dc58b98653560c75fb77fefd.gif){"name":"布衣食","gender":"Male","age":25,"attribute
Wesley13 Wesley13
3年前
PHP输出JSON,如何把空数组输出为对象
PHP输出JSON数据是非常方便的。一般情况下,PHP的一维数组输出为JSON时,会转成一个对象,也就是下面的形式:<?php$array'name''crazymus','age'18;echojson_encode($array
Stella981 Stella981
3年前
FastJson 反序列化注意事项
问题描述使用fastJson对json字符串进行反序列化时,有几个点需要注意一下:反序列化内部类反序列化模板类0\.Getter/Setter问题如我们希望返回的一个json串为"name":"name","isDeleted":true,"isEmpty":1
Wesley13 Wesley13
3年前
unity将 -u4E00 这种 编码 转汉字 方法
 unity中直接使用 JsonMapper.ToJson(对象),取到的字符串,里面汉字可能是\\u4E00类似这种其实也不用转,服务器会通过类似fastjson发序列化的方式,将json转对象,获取对象的值就是中文但是有时服务器要求将传参中字符串中类似\\u4E00这种转汉字,就需要下面 publ
Python进阶者 Python进阶者
1年前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这
秦宓
秦宓
Lv1
没有回音的山谷,不值得纵身一跃。
文章
2
粉丝
0
获赞
0