小程序引入百度api天气预报

先看下最终的效果(默认可以获得未来三天数据):

第一:首先准备条件(必须):

 1.小程序已认证,有appID

2.必须把https://api.map.baidu.com 添加到小程序的合法域名列表中

上面两个条件缺一不可,满足后 继续往下看

第二:在百度开放平台上创建一个应用,拿到Ak(前提有百度账号)。申请地址:http://lbsyun.baidu.com/apiconsole/key

应用创建成果:

 第三:万事俱备,只欠东风,引入官方提供的JS文件(下载地址:http://lbsyun.baidu.com/index.php?title=wxjsapi/wxjs-download),该文件中已经写好了请求数据的代码,我们只需要将数据取出来就好了

 例如:

// 引用官方文件
var map = require('../../bmap-wx.min.js');  
  
Page({  
  data:{  
    ak:"你的AK",  
    // 用于保存当日天气信息
    TayData:'',
    // 用于保存未来天气信息
    futureWeather:[]  
  },  
  onLoad:function(options){  
    var that = this;  
    // 新建bmap对象   
    var BMap = new bmap.BMapWX({   
      ak: that.data.ak   
    });   
   
    var success = function(data) {   
      console.log(data);  
              
      var weatherData = data.currentWeather[0];   
      var futureWeather = data.originalData.results[0].weather_data;  
      console.log(futureWeather);  
      weatherData = '城市:' + weatherData.currentCity + '\n' + 'PM2.5:' + weatherData.pm25 + '\n' +'日期:' + weatherData.date + '\n' + '温度:' + weatherData.temperature + '\n' +'天气:' + weatherData.weatherDesc + '\n' +'风力:' + weatherData.wind + '\n';   
      that.setData({   
        TayData: weatherData,  
        futureWeather: futureWeather  
      });   
    }   
          
    // 发起weather请求   
    BMap.weather({   
      fail: fail,   
      success: success   
    });   
  }
})  

自己手动请求数据:

Page({
  data: {
    // 用于保存当日天气数据
    Tad_weather: [],
    // 用于保存未来天气数据
    future_weather: []
  },
 
  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {
    var that = this;
    wx.request({
      url: 'https://api.map.baidu.com/telematics/v3/weather?location=西安市&output=json&ak=申请的ak',
      header: {
        'Content-Type': 'application/json'
      },
      success: function (res) {
        console.log(res.data.results);
        that.setData({
          Tad_weather: res.data.results[0].index
          future_weather: res.data.results[0].weather_data
        })
      }
    })
  }
})

 

转载于:https://www.cnblogs.com/bin521/p/10177531.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
微信小程序请求百度API接口的代码通常可以分为以下几个步骤: 1. 在小程序的配置文件app.json中注册百度API接口的域名。在"my"字段下添加"request"字段,并在列表中填入百度API的域名,例如:"https://api.baidu.com"。 2. 在小程序的页面中通过wx.request方法发起请求。首先,需要在小程序页面的js文件中引入wx.request方法。然后,可以使用wx.request方法来发送请求,具体代码如下: ```javascript wx.request({ url: 'https://api.baidu.com/your_api_path', // 你要请求的百度API接口地址 data: { // 若有参数,可通过data字段传递给API接口 param1: value1, param2: value2 }, header: { 'Content-Type': 'application/json' // 根据实际情况设置header信息 }, method: 'GET', // 根据API接口要求设置请求方式 success: function (res) { // 请求成功后的处理逻辑 console.log(res.data) }, fail: function (res) { // 请求失败后的处理逻辑 } }) ``` 3. 根据百度API接口的要求来设置请求参数和请求头信息。可以通过data字段来传递请求参数,通过header字段来设置请求头信息。根据API接口的要求设置正确的Content-Type,并选择适当的请求方式(GET、POST等)。 4. 处理请求成功和失败的回调函数。在success字段中可以编写请求成功后的处理逻辑,在fail字段中可以编写请求失败后的处理逻辑。可以根据需要对返回的数据进行处理和展示。 需要注意的是,在使用百度API接口前,需要先申请相关的密钥或授权,并按照官方文档提供的要求进行接口调用。以上是一个简单的示例,具体使用方式根据实际情况可能有所不同。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值