基于GO的每日宜忌查询接口调用代码实例

基于GO的每日宜忌查询接口调用代码实例

代码描述:基于GO的每日宜忌查询接口调用代码实例

代码平台:聚合数据

packagemain

import(

"io/ioutil"

"net/http"

"net/url"

"fmt"

"encoding/json"

)

//----------------------------------

// 老黄历调用示例代码 - 聚合数据

// 在线接口文档:http://www.juhe.cn/docs/65

//----------------------------------

constAPPKEY = "*******************"//您申请的APPKEY

func main(){

//1.日历

Request1()

//2.时辰

Request2()

}

//1.日历

func Request1(){

//请求地址

juheURL :="http://v.juhe.cn/laohuangli/d"

//初始化参数

param:=url.Values{}

//配置请求参数,方法内部已处理urlencode问题,中文参数可以直接传参 param.Set("key",APPKEY) //应用APPKEY(应用详细页查询)

param.Set("date","") //日期,格式2014-09-09

//发送请求

data,err:=Get(juheURL,param)

iferr!=nil{

fmt.Errorf("请求失败,错误信息:\r\n%v",err)

}else{

var netReturn map[string]interface{}

json.Unmarshal(data,&netReturn)

ifnetReturn["error_code"].(float64)==0{

fmt.Printf("接口返回result字段是:\r\n%v",netReturn["result"])

}

}

}

//2.时辰

func Request2(){

//请求地址

juheURL :="http://v.juhe.cn/laohuangli/h"

//初始化参数

param:=url.Values{}

//配置请求参数,方法内部已处理urlencode问题,中文参数可以直接传参 param.Set("key",APPKEY) //应用APPKEY(应用详细页查询)

param.Set("date","") //日期,格式2014-09-09

//发送请求

data,err:=Get(juheURL,param)

iferr!=nil{

fmt.Errorf("请求失败,错误信息:\r\n%v",err)

}else{

var netReturn map[string]interface{}

json.Unmarshal(data,&netReturn)

ifnetReturn["error_code"].(float64)==0{

fmt.Printf("接口返回result字段是:\r\n%v",netReturn["result"])

}

}

}

// get 网络请求

func Get(apiURL string,params url.Values)(rs[]byte,err error){ var Url *url.URL

Url,err=url.Parse(apiURL)

iferr!=nil{

fmt.Printf("解析url错误:\r\n%v",err)

returnnil,err

}

//如果参数中有中文参数,这个方法会进行URLEncode

Url.RawQuery=params.Encode()

resp,err:=http.Get(Url.String())

iferr!=nil{

fmt.Println("err:",err)

returnnil,err

}

defer resp.Body.Close()

returnioutil.ReadAll(resp.Body)

}

// post 网络请求 ,params 是url.Values类型

func Post(apiURL string, params url.Values)(rs[]byte,err error){ resp,err:=http.PostForm(apiURL, params)

iferr!=nil{

returnnil ,err

}

defer resp.Body.Close()

returnioutil.ReadAll(resp.Body)

}

基于GO的每日宜忌查询接口调用代码实例

代码描述:基于GO的每日宜忌查询接口调用代码实例

代码平台:聚合数据

packagemain

import(

"io/ioutil"

"net/http"

"net/url"

"fmt"

"encoding/json"

)

//----------------------------------

// 老黄历调用示例代码 - 聚合数据

// 在线接口文档:http://www.juhe.cn/docs/65

//----------------------------------

constAPPKEY = "*******************"//您申请的APPKEY

func main(){

//1.日历

Request1()

//2.时辰

Request2()

}

//1.日历

func Request1(){

//请求地址

juheURL :="http://v.juhe.cn/laohuangli/d"

//初始化参数

param:=url.Values{}

//配置请求参数,方法内部已处理urlencode问题,中文参数可以直接传参 param.Set("key",APPKEY) //应用APPKEY(应用详细页查询)

param.Set("date","") //日期,格式2014-09-09

//发送请求

data,err:=Get(juheURL,param)

iferr!=nil{

fmt.Errorf("请求失败,错误信息:\r\n%v",err)

}else{

var netReturn map[string]interface{}

json.Unmarshal(data,&netReturn)

ifnetReturn["error_code"].(float64)==0{

fmt.Printf("接口返回result字段是:\r\n%v",netReturn["result"])

}

}

}

//2.时辰

func Request2(){

//请求地址

juheURL :="http://v.juhe.cn/laohuangli/h"

//初始化参数

param:=url.Values{}

//配置请求参数,方法内部已处理urlencode问题,中文参数可以直接传参 param.Set("key",APPKEY) //应用APPKEY(应用详细页查询)

param.Set("date","") //日期,格式2014-09-09

//发送请求

data,err:=Get(juheURL,param)

iferr!=nil{

fmt.Errorf("请求失败,错误信息:\r\n%v",err)

}else{

var netReturn map[string]interface{}

json.Unmarshal(data,&netReturn)

ifnetReturn["error_code"].(float64)==0{

fmt.Printf("接口返回result字段是:\r\n%v",netReturn["result"])

}

}

}

// get 网络请求

func Get(apiURL string,params url.Values)(rs[]byte,err error){ var Url *url.URL

Url,err=url.Parse(apiURL)

iferr!=nil{

fmt.Printf("解析url错误:\r\n%v",err)

returnnil,err

}

//如果参数中有中文参数,这个方法会进行URLEncode

Url.RawQuery=params.Encode()

resp,err:=http.Get(Url.String())

iferr!=nil{

fmt.Println("err:",err)

returnnil,err

}

defer resp.Body.Close()

returnioutil.ReadAll(resp.Body)

}

// post 网络请求 ,params 是url.Values类型

func Post(apiURL string, params url.Values)(rs[]byte,err error){ resp,err:=http.PostForm(apiURL, params)

iferr!=nil{

returnnil ,err

}

defer resp.Body.Close()

returnioutil.ReadAll(resp.Body)

}


相关文章

  • 毕业综合实践报告模板
  • 毕业综合实践报告 姓 名: 学 号: 系 部: 专 业: 软件技术 班 级: 软件1班 指导教师: 完成日期 2011年6月5日 JAVA BS开发模式在销售管理软件上的运用 摘要 本文分析了Browser/Client结构的特点,同时列举 ...查看


  • infosys面试总结
  • 1. 作用域public,private,protected,以及不写时的区别 区别如下: 作用域 当前类 同一package 子孙类 其他package public √ √ √ √ protected √ √ √ × friendly ...查看


  • Dubbo路由模块设计说明书
  • Dubbo 路由模块 设计说明书 修改记录 1 目录 1. 1.1. 1.2. 引言 ............................................................................. ...查看


  • 人力资源管理系统软件工程毕业设计论文
  • 摘要 人力资源管理系统是现代企业的核心业务系统之一,人力资源管理的状况和水平对企业的运作和效率至关重要.现代企业人力资源管理的内容非常丰富,可能包含档案管理.合同管理.薪酬管理.招聘管理.绩效管理.系统管理等很多部分.在本次毕业设计中,我们 ...查看


  • 浅析缓存平台技术在业务支撑系统的应用
  • [摘要] 本文阐述了业务发展带来的业务支撑系统的瓶颈,分析了缓存平台技术,从而提出缓存平台技术在业务支撑系统的应用. [关键词] 缓存平台 业务支撑系统 API 应用程序接口(Application Program Interface) 全 ...查看


  • 软件工程实训报告 1
  • 本科生实习报告 实习类型 专业实训 题 目 成都市教育局中职教育基础能力平台 学院名称 信息科学与技术学院 专业名称 软件工程 学生姓名 学生学号 指导教师 实习地点 实习成绩 二〇一五 年 六 月 年 七 月 成都市教育局中职教育基础能力 ...查看


  • OPC服务器与客户程序开发指南
  • 第1章OPC概述 关键字:COMDCOMOPCDA通讯规范CLIENTSERVERGROUPITEM自定义接口自动化接口同步异步回调 随着计算机科学技术.工业控制等各方面新技术的迅速发展,计算机监控系统由早期的集中式监控向全分布式的方向发展 ...查看


  • COM编程入门
  • COM编程入门 第一部分--什么是COM,如何使用COM 编译:赵湘宁 点击查看 本文的目的是为刚刚接触COM的程序员提供编程指南,并帮助他们理解COM的基本概念.内容包括COM规范简介,重要的COM术语以及如何重用现有的COM组件.本文不 ...查看


  • 机械管理系统说明书之系统开发技术的分析
  • 2 系统开发技术的分析 系统客户端界面采用Visual C++ 6.0,后台数据库使用SQL SERVER 2000作为数据库服务器,下面将对前台开发工具Visual C++ 6.0,后台数据库Microsoft SQL Server 20 ...查看


热门内容