用户注册



邮箱:

密码:

用户登录


邮箱:

密码:
记住登录一个月忘记密码?

发表随想


还能输入:200字
云代码 - 其他代码库

基于GO的全国律师查询api调用代码实例

2016-05-26 作者: sj_xtx举报

[其他]代码库

package main
import (
    "io/ioutil"
    "net/http"
    "net/url"
    "fmt"
    "encoding/json"
)
 
//----------------------------------
// 律师查询调用示例代码 - 聚合数据
// 在线接口文档:http://www.juhe.cn/docs/83
//----------------------------------
 
const APPKEY = "*******************" //您申请的APPKEY
 
func main(){
 
    //1.按省份查询律师
    Request1()
 
    //2.按城市查询律师
    Request2()
 
    //3.按相似姓名查询律师
    Request3()
 
    //4.按专长领域查询律师
    Request4()
 
    //5.随机查询律师
    Request5()
 
    //6.按手机号码查询律师
    Request6()
 
    //7.由省份查询城市
    Request7()
 
    //8.查询专业领域
    Request8()
 
    //9.查询省份列表
    Request9()
 
    //10.按姓名查询律师辩词
    Request10()
 
    //11.按关键词查询律师辩词
    Request11()
 
    //12.随机查询律师辩词
    Request12()
 
}
 
//1.按省份查询律师
func Request1(){
    //请求地址
    juheURL :="http://op.juhe.cn/lawyers/pro"
 
    //初始化参数
    param:=url.Values{}
 
    //配置请求参数,方法内部已处理urlencode问题,中文参数可以直接传参
    param.Set("dtype","") //返回的数据格式,json或xml
    param.Set("st","") //开始数
    param.Set("count","") //返回的个数
    param.Set("pro","") //省份名字,如:江苏
    param.Set("key",APPKEY) //您申请的AppKey,请在应用详细页查询
 
 
    //发送请求
    data,err:=Get(juheURL,param)
    if err!=nil{
        fmt.Errorf("请求失败,错误信息:\r\n%v",err)
    }else{
        var netReturn map[string]interface{}
        json.Unmarshal(data,&netReturn)
        if netReturn["error_code"].(float64)==0{
            fmt.Printf("接口返回result字段是:\r\n%v",netReturn["result"])
        }
    }
}
 
//2.按城市查询律师
func Request2(){
    //请求地址
    juheURL :="http://op.juhe.cn/lawyers/city"
 
    //初始化参数
    param:=url.Values{}
 
    //配置请求参数,方法内部已处理urlencode问题,中文参数可以直接传参
    param.Set("dtype","") //返回的数据格式,json或xml
    param.Set("st","") //开始数
    param.Set("count","") //返回的个数
    param.Set("city","") //城市名字,如:苏州
    param.Set("key",APPKEY) //您申请的AppKey,请在应用详细页查询
 
 
    //发送请求
    data,err:=Get(juheURL,param)
    if err!=nil{
        fmt.Errorf("请求失败,错误信息:\r\n%v",err)
    }else{
        var netReturn map[string]interface{}
        json.Unmarshal(data,&netReturn)
        if netReturn["error_code"].(float64)==0{
            fmt.Printf("接口返回result字段是:\r\n%v",netReturn["result"])
        }
    }
}
 
//3.按相似姓名查询律师
func Request3(){
    //请求地址
    juheURL :="http://op.juhe.cn/lawyers/name"
 
    //初始化参数
    param:=url.Values{}
 
    //配置请求参数,方法内部已处理urlencode问题,中文参数可以直接传参
    param.Set("dtype","") //返回的数据格式,json或xml
    param.Set("st","") //开始数
    param.Set("count","") //返回的个数
    param.Set("name","") //要查询的名字,如:张三、张、安等(模糊查询)
    param.Set("key",APPKEY) //您申请的AppKey,请在应用详细页查询
 
 
    //发送请求
    data,err:=Get(juheURL,param)
    if err!=nil{
        fmt.Errorf("请求失败,错误信息:\r\n%v",err)
    }else{
        var netReturn map[string]interface{}
        json.Unmarshal(data,&netReturn)
        if netReturn["error_code"].(float64)==0{
            fmt.Printf("接口返回result字段是:\r\n%v",netReturn["result"])
        }
    }
}
 
//4.按专长领域查询律师
func Request4(){
    //请求地址
    juheURL :="http://op.juhe.cn/lawyers/spec"
 
    //初始化参数
    param:=url.Values{}
 
    //配置请求参数,方法内部已处理urlencode问题,中文参数可以直接传参
    param.Set("dtype","") //返回的数据格式,json或xml
    param.Set("st","") //开始数
    param.Set("count","") //返回的个数
    param.Set("spec","") //专长领域
    param.Set("key",APPKEY) //您申请的AppKey,请在应用详细页查询
 
 
    //发送请求
    data,err:=Get(juheURL,param)
    if err!=nil{
        fmt.Errorf("请求失败,错误信息:\r\n%v",err)
    }else{
        var netReturn map[string]interface{}
        json.Unmarshal(data,&netReturn)
        if netReturn["error_code"].(float64)==0{
            fmt.Printf("接口返回result字段是:\r\n%v",netReturn["result"])
        }
    }
}
 
//5.随机查询律师
func Request5(){
    //请求地址
    juheURL :="http://op.juhe.cn/lawyers/rand"
 
    //初始化参数
    param:=url.Values{}
 
    //配置请求参数,方法内部已处理urlencode问题,中文参数可以直接传参
    param.Set("dtype","") //返回的数据格式,json或xml
    param.Set("count","") //返回的个数
    param.Set("key",APPKEY) //您申请的AppKey,请在应用详细页查询
 
 
    //发送请求
    data,err:=Get(juheURL,param)
    if err!=nil{
        fmt.Errorf("请求失败,错误信息:\r\n%v",err)
    }else{
        var netReturn map[string]interface{}
        json.Unmarshal(data,&netReturn)
        if netReturn["error_code"].(float64)==0{
            fmt.Printf("接口返回result字段是:\r\n%v",netReturn["result"])
        }
    }
}
 
//6.按手机号码查询律师
func Request6(){
    //请求地址
    juheURL :="http://op.juhe.cn/lawyers/mobile"
 
    //初始化参数
    param:=url.Values{}
 
    //配置请求参数,方法内部已处理urlencode问题,中文参数可以直接传参
    param.Set("dtype","") //返回的数据格式,json或xml
    param.Set("st","") //开始数
    param.Set("count","") //返回的个数
    param.Set("mobile","") //手机号码
    param.Set("key",APPKEY) //您申请的AppKey,请在应用详细页查询
 
 
    //发送请求
    data,err:=Get(juheURL,param)
    if err!=nil{
        fmt.Errorf("请求失败,错误信息:\r\n%v",err)
    }else{
        var netReturn map[string]interface{}
        json.Unmarshal(data,&netReturn)
        if netReturn["error_code"].(float64)==0{
            fmt.Printf("接口返回result字段是:\r\n%v",netReturn["result"])
        }
    }
}
 
//7.由省份查询城市
func Request7(){
    //请求地址
    juheURL :="http://op.juhe.cn/lawyers/citiesByPro"
 
    //初始化参数
    param:=url.Values{}
 
    //配置请求参数,方法内部已处理urlencode问题,中文参数可以直接传参
    param.Set("dtype","") //返回的数据格式,json或xml
    param.Set("pro","") //省份,如:江苏
    param.Set("key",APPKEY) //您申请的AppKey,请在应用详细页查询
 
 
    //发送请求
    data,err:=Get(juheURL,param)
    if err!=nil{
        fmt.Errorf("请求失败,错误信息:\r\n%v",err)
    }else{
        var netReturn map[string]interface{}
        json.Unmarshal(data,&netReturn)
        if netReturn["error_code"].(float64)==0{
            fmt.Printf("接口返回result字段是:\r\n%v",netReturn["result"])
        }
    }
}
 
//8.查询专业领域
func Request8(){
    //请求地址
    juheURL :="http://op.juhe.cn/lawyers/specs"
 
    //初始化参数
    param:=url.Values{}
 
    //配置请求参数,方法内部已处理urlencode问题,中文参数可以直接传参
    param.Set("dtype","") //返回的数据格式,json或xml
    param.Set("key",APPKEY) //您申请的AppKey,请在应用详细页查询
 
 
    //发送请求
    data,err:=Get(juheURL,param)
    if err!=nil{
        fmt.Errorf("请求失败,错误信息:\r\n%v",err)
    }else{
        var netReturn map[string]interface{}
        json.Unmarshal(data,&netReturn)
        if netReturn["error_code"].(float64)==0{
            fmt.Printf("接口返回result字段是:\r\n%v",netReturn["result"])
        }
    }
}
 
//9.查询省份列表
func Request9(){
    //请求地址
    juheURL :="http://op.juhe.cn/lawyers/pros"
 
    //初始化参数
    param:=url.Values{}
 
    //配置请求参数,方法内部已处理urlencode问题,中文参数可以直接传参
    param.Set("dtype","") //返回的数据格式,json或xml
    param.Set("key",APPKEY) //您申请的AppKey,请在应用详细页查询
 
 
    //发送请求
    data,err:=Get(juheURL,param)
    if err!=nil{
        fmt.Errorf("请求失败,错误信息:\r\n%v",err)
    }else{
        var netReturn map[string]interface{}
        json.Unmarshal(data,&netReturn)
        if netReturn["error_code"].(float64)==0{
            fmt.Printf("接口返回result字段是:\r\n%v",netReturn["result"])
        }
    }
}
 
//10.按姓名查询律师辩词
func Request10(){
    //请求地址
    juheURL :="http://op.juhe.cn/lawyers/argsByName"
 
    //初始化参数
    param:=url.Values{}
 
    //配置请求参数,方法内部已处理urlencode问题,中文参数可以直接传参
    param.Set("dtype","") //返回的数据格式,json或xml
    param.Set("st","") //开始数
    param.Set("count","") //返回的个数
    param.Set("name","") //律师姓名
    param.Set("key",APPKEY) //您申请的AppKey,请在应用详细页查询
 
 
    //发送请求
    data,err:=Get(juheURL,param)
    if err!=nil{
        fmt.Errorf("请求失败,错误信息:\r\n%v",err)
    }else{
        var netReturn map[string]interface{}
        json.Unmarshal(data,&netReturn)
        if netReturn["error_code"].(float64)==0{
            fmt.Printf("接口返回result字段是:\r\n%v",netReturn["result"])
        }
    }
}
 
//11.按关键词查询律师辩词
func Request11(){
    //请求地址
    juheURL :="http://op.juhe.cn/lawyers/argsByTerm"
 
    //初始化参数
    param:=url.Values{}
 
    //配置请求参数,方法内部已处理urlencode问题,中文参数可以直接传参
    param.Set("dtype","") //返回的数据格式,json或xml
    param.Set("st","") //开始数
    param.Set("count","") //返回的个数
    param.Set("term","") //关键词
    param.Set("key",APPKEY) //您申请的AppKey,请在应用详细页查询
 
 
    //发送请求
    data,err:=Get(juheURL,param)
    if err!=nil{
        fmt.Errorf("请求失败,错误信息:\r\n%v",err)
    }else{
        var netReturn map[string]interface{}
        json.Unmarshal(data,&netReturn)
        if netReturn["error_code"].(float64)==0{
            fmt.Printf("接口返回result字段是:\r\n%v",netReturn["result"])
        }
    }
}
 
//12.随机查询律师辩词
func Request12(){
    //请求地址
    juheURL :="http://op.juhe.cn/lawyers/argsByRand"
 
    //初始化参数
    param:=url.Values{}
 
    //配置请求参数,方法内部已处理urlencode问题,中文参数可以直接传参
    param.Set("dtype","") //返回的数据格式,json或xml
    param.Set("count","") //返回的个数
    param.Set("key",APPKEY) //您申请的AppKey,请在应用详细页查询
 
 
    //发送请求
    data,err:=Get(juheURL,param)
    if err!=nil{
        fmt.Errorf("请求失败,错误信息:\r\n%v",err)
    }else{
        var netReturn map[string]interface{}
        json.Unmarshal(data,&netReturn)
        if netReturn["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)
    if err!=nil{
        fmt.Printf("解析url错误:\r\n%v",err)
        return nil,err
    }
    //如果参数中有中文参数,这个方法会进行URLEncode
    Url.RawQuery=params.Encode()
    resp,err:=http.Get(Url.String())
    if err!=nil{
        fmt.Println("err:",err)
        return nil,err
    }
    defer resp.Body.Close()
    return ioutil.ReadAll(resp.Body)
}
 
// post 网络请求 ,params 是url.Values类型
func Post(apiURL string, params url.Values)(rs[]byte,err error){
    resp,err:=http.PostForm(apiURL, params)
    if err!=nil{
        return nil ,err
    }
    defer resp.Body.Close()
    return ioutil.ReadAll(resp.Body)
}


网友评论    (发表评论)


发表评论:

评论须知:

  • 1、评论每次加2分,每天上限为30;
  • 2、请文明用语,共同创建干净的技术交流环境;
  • 3、若被发现提交非法信息,评论将会被删除,并且给予扣分处理,严重者给予封号处理;
  • 4、请勿发布广告信息或其他无关评论,否则将会删除评论并扣分,严重者给予封号处理。


扫码下载

加载中,请稍后...

输入口令后可复制整站源码

加载中,请稍后...