分享好友 最新动态首页 最新动态分类 切换频道
基于Go语言实现微信小程序获得访问者ip的天气源码.zip
2024-12-26 04:02
package weather import ( "fmt" "io/ioutil" // "io/ioutil" "WeChat_weather/weather_route" "encoding/json" "net" "net/http" "github.com/thinkeridea/go-extend/exnet" ) // 模版{"nums":6,"cityid":"101040100","city":"重庆","date":"2023-08-01","week":"星期二","update_time":"17:07","wea":"雨","wea_img":"yu","tem":"25","tem_day":"34","tem_night":"26","win":"南风","win_speed":"2级","win_meter":"11km/h","air":"56","pressure":"972","humidity":"96%"} // 用来获取ip地址和天气信息及返回 func Index(w http.ResponseWriter, req *http.Request) { // 获取访问者ip ip := GetIp(w, req) fmt.Println(ip) // fmt.Println(GetWeather(ip)) // 写到网页界面上 view := GetWeather(ip) w.Write([]byte(view)) } // 获取访问者的ip地址 func GetIp(w http.ResponseWriter, req *http.Request) string { // 获取访问者的ip remoteAddr := req.RemoteAddr if ip := exnet.ClientPublicIP(req); ip != "" { remoteAddr = ip } else if ip := exnet.ClientIP(req); ip != "" { remoteAddr = ip } else if ip := req.Header.Get("X-Real-IP"); ip != "" { remoteAddr = ip } else if ip = req.Header.Get("X-Forwarded-For"); ip != "" { remoteAddr = ip } else { remoteAddr, _, _ = net.SplitHostPort(remoteAddr) } if remoteAddr == "::1" { remoteAddr = "127.0.0.1" } return remoteAddr } // 获取指定ip地址的天气 func GetWeather(ip string) string { // 用来获取指定ip天气的url url := fmt.Sprintf("https://v0.yiketianqi.com/free/day?appid=81665891&appsecret=kfMA249f&unescape=1&ip=%s", ip) // 请求url resp, err := http.Get(url) if err != nil { fmt.Println("获取天气失败", err) } // 对url请求流关闭 defer resp.Body.Close() // 获取信息的全部信息 body, err := ioutil.ReadAll(resp.Body) if err != nil { fmt.Println("读取内容失败", err) return "" } // 结构体用来接受信息和选择展示指定信息 var msg weatherroute.Msg json.Unmarshal(body, &msg) fmt.Println(string(body)) fmt.Println(msg.City, msg.Wea) return string(body)
最新文章
管理层次是什么(管理层次)
1、按层次划分管理层次,管理可分为高层管理、中层管理和基层(底层)管理三个层次。 高层管理者是组织管理层次的高级管理者,其主要作用是确立组织管理层次的宗旨和目标,规定职责和提供资源。中层管理者负责利用资源以实现高层管理者确立
做一个WordPress社区+知识付费小程序
知识付费、积分阅读这个在小程序里面可以激发潜在的用户,积分我们可以利用每天的签到打卡这个功能,尽可能的去引导用户每天去进入小程序,增加小程序的留存,说到小程序的留存大家都知道,这个是很低的
站长必备高效工具,助力网站运营效率大幅提升
  在当今数字化时代,网站运营效率对于任何一个站长来说都是至关重要的。一个高效运营的网站不仅可以提升用户体验,还能增加网站的流量和收益。为了实现这一目标,站长们可以借助一些必备工具来提升网站的运营效率。  一个优秀的网站分
欧洲杯克罗地亚队11威尔士队(2020欧洲杯克罗地亚国家队阵容)
1、克罗地亚vs威尔士比分2、世界足球国家队排名前三十3、欧洲杯积分榜排名4、欧洲杯都有哪些国家5、2024欧洲杯预选赛积分榜最新6、克罗地亚和威尔士哪个强年3月22日03:45,以色列VS冰岛,比分2:2。2024年3月22日03:45,威尔士VS芬兰,比
路由器助手
《路由器助手》是款非常好用的路由器连接助手,适用于路由器的PPPoE协议拨号,让你在手机一键轻松设置密码。你还等什么?赶快下载体验吧。本软件为Android手机端路由器连接助手,适用于路由器的PPPoE协议拨号。为了软件体验及质量,我们不投
SLAM优化算法:图优化和凸优化算法的区别
小白:师兄师兄,最近我在看SLAM的优化算法,有种方法叫“图优化”,以前学习算法的时候还有一个优化方法叫“凸优化”,这两个不是一个东西吧?师兄:哈哈,这个问题有意思,虽然它们中文发音一样,但是意思差别大着呢!我们来看看英文表达
"赛博演猿:全球领先的人工智能数字人AIGC平台" – 技术分享
网址:https://www.zr-ai.com/在数字化时代,人工智能和数字人技术正在重塑我们的互动方式和内容创作。赛博演猿,作为全球领先的人工智能数字人AIGC平台,正以其自主研发的创新技术,为数字人领域带来革命性的变化。一、集成前沿技术的数字
美术画架双面画板儿童学习画板益智玩具多功能带画纸白板黑板0918信息
产品详细说明:产品名称:美术画架双面画板儿童学习画板益智玩具多功能带画纸白板黑板0918产品货号:SXR-0918产品规格:73x56x8CM玩具启迪:1、画画可以发挥孩子的想象力,是一种表达感情的方式。2、画画可以锻炼孩子小手的灵活性和协调性,
从群晖Web Station安装WordPress&PhpMyAdmin看shell的使用
创作立场声明:我再本文中描述的文字内容,为本人亲手创作。感谢小米机械键盘,感谢lg显示器,感谢mac系统,感谢chrome浏览器为本文做的贡献。借着最近蜗牛比较火,我也跟风买了一台,相对其他nas系统来说比较方便,如果你有公网IP可以尝试
www.131pk.com
通过本工具可以快速查询到您站点的谷歌(www.google.com)、百度(www.baidu.com)、必应(cn.bing.com)、雅虎(cn.yahoo.com)、搜搜(www.soso.com)、搜狗(www.sogou.com)、有道(www.youdao.com)等搜索引擎收录情况及反向链接;可以快速查询到谷
相关文章
推荐文章
发表评论
0评