我的编程空间,编程开发者的网络收藏夹
学习永远不晚

微信小程序实现IP归属地获取功能

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

微信小程序实现IP归属地获取功能

在日常开发中,后端主要提供数据以及处理业务逻辑,前端主要提供页面布局以及数据展示。后端程序员对于页面布局接触比较少,但是小程序有完善的文档说明、页面布局也相对简单,实现起来相对简单一些。而且小程序相对于安卓或者IOS审核机制也相对简单一些。本文介绍如何实现一个简单获取IP归属地的小程序。

效果展示

页面主要有两个功能:

  • 显示当前IP地址和归属地。
  • 根据查询条件显示归属地。

页面布局从上往下分成三部分:

  • 第一部分为文字说明,介绍页面功能。
  • 第二部分显示当前IP地址。
  • 第三部分显示查询的地址结果。

实现步骤

将三个布局从上往下,从上往下依次编写,并配置样式和布局详解。

顶部展示(第一部分)

实现效果:

设置一个蓝色布局,设置蓝色背景,宽度为100%,高度为330rpx

<view style="height: 100%;width: 100%;">
  <view style="width: 100%;height: 330rpx;background-color: #6e74dd">
  </view>
</view>

展示效果:

2、 里面分成两个布局,左边显示文字,右边显示一个小图标。

  • 首先设置布局左浮动,float:left
  • 左边文字字体设置成白色,文字调整大小和边距。
  • 右边调整边距和大小。

详情代码:

# xwml
<view class="ip_intro left_float">
  <view style="font-size:x-large">IP地址归属地</view>
  <view style="padding-top: 3%;">一键查询 快速方便</view>
</view>
<view class="left_float intro_icon">
  <image style="width: 80px;height: 80px;"  class="lazy" data-src="/images/ip_search.png" mode="heightFix"></image>
</view>
# wxss
.left_float {
  float: left;
}

.ip_intro {
  padding-left: 5%;
  padding-top: 10%;
  color: white;
}

.intro_icon {
  padding-left: 25%;
  margin-top: 8%;
}

效果展示:

中间展示(第二部分)

实现效果:

  • 首先view设置宽度90%,高度自适应,背景调整成白色。整体往上移动,部分覆盖在第一部分蓝色背景上。
  • 左侧设置view设置导航条,设置上下宽,左右窄的布局。
  • 右侧调整边距和显示自提大小。
  • 请求IP归属地信息,请求地址www.jeremy7.cn/springboot-schedule/holiday/ip-address

详情代码:

# wxml
<view class="clean_float local_div">
    <view class="left_float">
      <view class="local_bar"></view>
    </view>
    <view class="left_float local_text">
      <view>当前IP地址:{{localIp}}</view>
      <view style="margin-top: 12rpx;">归属地:{{localAddress}}</view>
    </view>
</view>

# wxss
.clean_float {
  clear:both;
}

.local_div {
  width: 90%;
  height: 130rpx; 
  margin: 0 auto;
  background-color: #ffffff;
  margin-top: -10%;
  border-radius: 10px;
}

.local_bar {
  margin-left: 30rpx;
  margin-top: 50rpx;
  border-radius: 2px; 
  width: 8rpx;
  height: 50rpx;
  background-color: #6e74dd;
}

.local_text {
  font-size: small;
  margin-left: 25rpx;
  margin-top: 35rpx;  
}
# js
data: {
   localIp: "---",
   localAddress: "---" 
}
  
var that =  this;
wx.request({
  url:  "htts://www.jeremy7.cn/springboot-schedule/holiday/ip-address",
  success (res){
    var data = res.data;
    that.setData({
      localAddress:data.address,
      localIp:data.ip
    })
  }
})

效果展示:

尾部部分(第三部分)

实现效果:

尾部部分是IP归属地的查询,根据用户输入的IP查询归属地。

  • 整个最大的view宽度90%,背景设置成白色,调整高度和圆角。
  • 最上面设置文字说明,设置边距和字体大小。
  • 中间输入框,设置文字居中,需要将行高和高度设置成相同的高度height: 78rpx; line-height:78rpx;
  • 按查询按钮调整间距,高度以及圆角。
  • 请求IP归属地信息,请求地址www.jeremy7.cn/springboot-schedule/holiday/ip-address,传入查询的IP

详情代码如下:

# wxml
<view class="ip_find">
   <view class="ip_find_text">IP归属地查询</view>
   <view>
    <input class="ip_input" type="text" bindinput="changeIp"/>
   </view>
   <view class="ip_find_btn">
      <view bindtap="findAddress">查询</view>
   </view>
   <view class="result_div" wx:if="{{showResult}}">
      <view class="left_float">
        <view class="local_bar"></view>
      </view>
      <view class="left_float local_text">
        <view>当前IP地址:{{resultIp}}</view>
        <view style="margin-top: 12rpx;">归属地:{{resultAddress}}</view>
      </view>
    </view>
</view>

 

# wxss
.ip_find {
  width: 90%;
  height: 700rpx; 
  margin: 0 auto;
  background-color: #ffffff;
  margin-top: 20px;
  border-radius: 10px;
}

.ip_input {
  height: 78rpx; 
  background-color: #F5F5F5;
  width: 90%;
  margin: 30rpx auto;
  border-radius: 24px;
  text-align: center;
  line-height:78rpx;
}

.ip_find_text {
  padding-top: 28px;
  padding-left: 20px;
  font-weight: bolder;
}

.ip_find_btn {
  height: 78rpx; 
  background-color: #6e74dd;
  width: 90%;
  margin: 0 auto;
  border-radius: 24px;
  text-align: center;
  line-height:78rpx;
}
# js
findAddress() {
  var that =  this;
  var searchIp = this.data.searchIp;
  console.log(searchIp);
  var valid = that.isValidIP(searchIp);
  if(!valid) {
    wx.showToast({
      title: "请填写正确 IP",
      icon: 'none',
      duration: 2000
    })
    return;
  }
  that.searchAddress(searchIp);
},
searchAddress(searchIp) {
  var that =  this;
  wx.request({
    url: "htts://www.jeremy7.cn/springboot-schedule/holiday/ip-address",
    data: {
       ip:searchIp
    },
    success (res){
      var data = res.data;
      var data = res.data;
      that.setData({
        resultAddress:data.address,
        resultIp:data.ip,
        showResult:true
      })

    }
  })
},

// 验证 IP 规格合法
isValidIP(ip) {
  var reg = /^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/;
  return reg.test(ip);
}, 

changeIp: function (e){
  this.setData({
    searchIp: e.detail.value
  })
},
  • changeIp每次输入数据实时传递给searchIp变量。
  • isValidIP验证IP的合法性。
  • 结果展示使用showResult判断,查询成功后showResult 改成true,使用wx:if显示结果数据。 效果展示:

总结

从上、中、下三个部分分别讲解页面的布局。

整体布局主要是需要设置宽度,一般设置成90%的宽度,高度自适应。

视图之间的布局主要调整边距、修改大小。

文字上下居中需要设置heightline-height改成一致。

整体布局需要颜色统一,看起来简洁、大方。

后端程序对前端不熟悉,但是多多练习一些标签的使用,上手还是很快的。

小程序展示

打开微信扫一扫,查看你的IP归属地:

到此这篇关于微信小程序实现IP归属地获取功能的文章就介绍到这了,更多相关小程序IP归属地获取内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

微信小程序实现IP归属地获取功能

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

python实现获取Ip归属地等信息

如果你有一批IP地址想要获得这些IP具体的信息,比如归属国家,城市等,最好的办法当时是调用现有的api接口来获取,我在之前就写过一篇文章,是关于我的博客被莫名攻击的时,就有获取过一批IP,攻击的时候当时是恢复业务重要,IP该封的就要封,攻击
2022-06-04

微信小程序怎么实现获取用户手机号码功能

本篇内容主要讲解“微信小程序怎么实现获取用户手机号码功能”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“微信小程序怎么实现获取用户手机号码功能”吧!前言获取用户手机号码 分为以下几步:第一点击页面
2023-07-02

使用微信小程序实现地图定位功能

使用微信小程序实现地图定位功能微信小程序作为一种轻量级的应用程序,提供了丰富的能力,其中地图定位功能是许多小程序开发者常常需要使用的。本文将介绍如何使用微信小程序来实现地图定位功能,并给出具体的代码示例。一、准备工作在开始编写代码之前,我们
使用微信小程序实现地图定位功能
2023-11-21

微信小程序开发如何实现地图功能

这篇文章主要讲解了“微信小程序开发如何实现地图功能”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“微信小程序开发如何实现地图功能”吧!基本使用地图组件使用起来也很简单。.wxml
2023-06-26

微信小程序地图定位功能怎么实现

本篇内容主要讲解“微信小程序地图定位功能怎么实现”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“微信小程序地图定位功能怎么实现”吧!方法如下1.首先呢你要有一个方法去触发这个点击事件,下面已经写好
2023-06-30

【微信授权登录】uniapp开发小程序,实现获取微信授权登录功能

一、解题思路: 微信授权登录(获取用户信息) 1.先获取用户信息——用户授权允许后,通过调用uni.login 可以获取到code。 2.拿着获取到的code去调用——登录接口,可以获取到token。 3.把token存入缓存。就可以在页面
2023-08-16

编程热搜

目录