package main

import (
"fmt"
"net/http"
//"net/url"
"github.com/drone/routes"
"database/sql"
_ "github.com/go-sql-driver/mysql"
"encoding/json"
) var db = &sql.DB{} func init(){
var err interface{}
db, err = sql.Open("mysql", "root:123@tcp(localhost:3306)/mytest?charset=utf8")
if err!=nil{
fmt.Println("数据库连接出错")
}else{
fmt.Println("suc sql connect")
}
} type BaseRes struct{
Code int
Msg string
Data interface{}
} func (b BaseRes) sucSet(m string,c int) BaseRes{
b.Code=c
b.Msg=m
return b //这里要返回出去才能被外界访问,因为这是一个闭包
} type Article struct{
Title string
Author string
Time string
Content string
} type ArticleTwo struct{
Id int
Title string
Content string
} func testRoute(w http.ResponseWriter,r *http.Request){
var sid Article
sid.Title="第一女首富的最好时刻又来了"
sid.Author="周聪明"
sid.Time="2014-12-03"
sid.Content="十一年前的今天,当年的胡润百富榜发布,49岁的张茵拥有财富270亿元,成为中国第一位女首富,也是世界上最富有的女性白手起家者。当胡润公布首富人名时,场下只有两三"
var sendData BaseRes
sendData.Code=10000
sendData.Msg="success"
sendData.Data=sid
res,_:=json.Marshal(sendData)
fmt.Fprintln(w, string(res))
} func testRouteTwo(w http.ResponseWriter,r *http.Request){
rows, _ := db.Query("select * from article")
var a ArticleTwo
var arr []ArticleTwo //定义一个arr的数组用来存储ArticleTwo类型的数据
for rows.Next() {
rows.Scan(&a.Title, &a.Content, &a.Id) //存储ArticleTwo类型的数据
arr=append(arr,a) //循环加入数组中
}
var b BaseRes
b.Data=arr
b=b.sucSet("suc",10000)
res,_:=json.Marshal(b)
fmt.Fprintln(w, string(res))
} func main() {
fmt.Println("正在启动WEB服务...")
var mux *routes.RouteMux = routes.New()
mux.Get("/",testRoute)
mux.Get("/two",testRouteTwo) //http.Handle("/", mux)
http.ListenAndServe(":8088", mux)
fmt.Println("服务已停止")
}

  

go api json 输出尝试的更多相关文章

  1. Jackson如何使JSON输出变得优雅?

    本篇文章翻译自:How to enable pretty print JSON output (Jackson) 在这篇文章中,我们将教你如何利用Jackson Library在控制台或者JSP页面优 ...

  2. Springmvc 配置json输出的几种方式

    Spring MVC 3.0 返回JSON数据的几种方法: 1. 直接 PrintWriter 输出 2. 使用 JSP 视图 3. 使用Spring内置的支持 // Spring MVC 配置 &l ...

  3. FastJson/spring boot: json输出方法二

    1.引入FastJson依赖包 <!-- FastJson --> <dependency> <groupId>com.alibaba</groupId> ...

  4. FastJson/spring boot: json输出

    1.引入FastJson依赖包 <!-- FastJson --> <dependency> <groupId>com.alibaba</groupId> ...

  5. php api 接口输出json 数据

    页面调用接口,简单写个api 试试 如下 <?php $arr = array( array('url'=>'https://baidu.com'), array('map'=>'h ...

  6. 解决ASP.NET Web API Json对象循环参考错误

    前言 一般我们在开法 ASP.NET Web API 时,如果是使用 Entity Framework 技术来操作数据库的话,当两个 Entity 之间包含导览属性(Navigation Proper ...

  7. 快速搭建REST API——json server

    一:全局安装json-server npm install json-server -g 二:在自己项目跟目录下存放mock/data.json,json内容如下: { "roles&quo ...

  8. TP5内部异常API数据输出的自定义方法编写

    需求:利用postman进行请求api接口过程中 关于一些数据输出异常的情况下 我们希望通过自己编写一些类和方法 实现便于后端人员进行根据提示进行调试处理! 以下测试的时候 请设置 app_debug ...

  9. python 格式化 json输出

    利用python格式化json 字符串输出. $ echo '{"json":"obj"}' | python -m json.tool 利用python -m ...

随机推荐

  1. PHP写的验证码类

    class Captcha { private $width; private $height; private $codeNum; private $code; private $im; funct ...

  2. go 语言如何跨平台编译

    以evio源码的分析来说明: 我们看到在有些文件的头部有这样一个标识:文件链接:https://github.com/tidwall/evio/blob/master/evio_unix.go // ...

  3. Future模式介绍及入门使用

    FutureClient代码实现: package com.hjf.future; public class FutureClient { /** * 请求客户端 * @param queryStr ...

  4. JavaWeb在线电子相册springmvc

    (一) 这学期上了一们叫做J2EE的选修课,本以为很水,没想到这个课这么烦气,最后大实验是一个springmvc的电子相册,做了两个周,终于完事了,姑且把这一篇叫做(一)吧 粗略看了一下啊,两个人的实 ...

  5. 剑指Offer 56. 删除链表中重复的结点 (链表)

    题目描述 在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针. 例如,链表1->2->3->3->4->4->5 处理后 ...

  6. C# 网络通信功能 同步数据交互开发

    前言 本文将使用一个Nuget公开的组件技术来实现一对多的数据通信功能,提供了一些简单的API,来方便的向服务器进行数据请求. 在visual studio 中的Nuget管理器中可以下载安装,也可以 ...

  7. JDBC driver连接MySQL运行报错The server time zone value 'Öйú±ê׼ʱ¼ä' is unrecognized or represents more than

    出错原因: 因为安装mysql的时候时区设置的不正确. mysql默认的是美国的时区,而我们中国大陆要比他们迟8小时,采用GMT+8:00格式. 也就是说是数据库和系统时区差异所造成的. 验证:运行c ...

  8. 基于scrapy-redis分布式爬虫(简易)

    redis分布式部署 1.scrapy框架是否可以自己实现分布式? - 不可以.原因有二. 其一:因为多台机器上部署的scrapy会各自拥有各自的调度器,这样就使得多台机器无法分配start_urls ...

  9. 一个页面从输入url到加载完成的过程都发生了什么,请详细说明

    1.首先,在浏览器地址栏中输入url 2.浏览器先查看浏览器缓存-系统缓存-路由器缓存,如果缓存中有,会直接在屏幕中显示页面内容.若没有,则跳到第三步操作 3.在发送http请求前,需要域名解析(DN ...

  10. 我的代码-models

    # coding: utf-8 # In[1]: import pandas as pdimport numpy as npfrom sklearn import treefrom sklearn.s ...