在这里我通过百度地图的api来举例子。
这里的请求是通过wx.request来实现的,我们先来看一下官方文档是怎么说的:
图片.png
可以看到wx.request有很多的参数,这里我重点讲一下url这个参数,URL(Uniform Resource Locator,统一资源定位符),它是WWW的统一资源定位标志,就是指网络地址。顾名思义url通俗地讲就是我们访问的地址嘛。
我们想要使用百度地图的api就必须得让小程序知道这个api是来自于哪,我们就得进入微信的公众平台把所要请求的地址给填写好。
在微信公众平台的设置一栏中把我们所要请求的api给填写好:
图片.png
下一步我们就得到百度地图官网去看相关的说明:
图片.png
官方这里说要使用百度地图提供的api就必须注册账号才能获得相关的申请免密ak,申请好之后得结果如下:
图片.png
// 引用百度地图微信小程序JSAPI模块
var bmap = require('../../libs/bmap-wx.js');
Page({
data: {
weatherData: ''
},
onLoad: function() {
var that = this;
// 新建百度地图对象
var BMap = new bmap.BMapWX({
ak: '您的ak'
});
var fail = function(data) {
console.log(data)
};
var success = function(data) {
var weatherData = data.currentWeather[0];
weatherData = '城市:' + weatherData.currentCity + '\n' + 'PM2.5:' + weatherData.pm25 + '\n' +'日期:' + weatherData.date + '\n' + '温度:' + weatherData.temperature + '\n' +'天气:' + weatherData.weatherDesc + '\n' +'风力:' + weatherData.wind + '\n';
that.setData({
weatherData: weatherData
});
}
// 发起weather请求
BMap.weather({
fail: fail,
success: success
});
}
})
官方的使用方法,第一行需要引入一个bmap-wx.js的文件,我们可以在百度地图官方网站中进行下载,下载好后解压把需要的文件引入到项目中来。
index.wxml
<view class="weather">
<text>{{weatherData}}</text>
</view>
效果就像这样子啦:
图片.png
这里与平常使用的最大不同就是发起的是https请求。HTTPS(全称:Hyper Text Transfer Protocol over Secure Socket Layer)是以安全为目标的HTTP通道,是HTTP的安全版,在HTTP下加入了SSL层。
SSL(Secure Sockets Layer 安全套接层),及其继任者传输层安全(Transport Layer Security,TLS)是为网络通信提供安全及数据完整性的一种安全协议。TLS与SSL在传输层对网络连接进行加密。