作业详情:链接:https://pan.baidu.com/s/12ETAKtvU6SQrvHx68xOzTA
提取码:m9l7
在微信公共平台中的开发设置上添加request 合法域名
https://international.v1.hitokoto.cn
https://v1.hitokoto.cn
https://www.tianqiapi.com
新增一个页面weather用来实现天气预报。
在weather.js中利用wx.request()来进行相关相应,并利用success(res) {}中的setData({})对相关变量进行修改。
中断请求任务
RequestTask.onHeadersReceived(function callback)
监听 HTTP Response Header 事件。会比请求完成事件更早
RequestTask.offHeadersReceived(function callback)
取消监听 HTTP Response Header 事件
参数
Object object
属性 | 类型 | 默认值 | 必填 | 说明 | 最低版本 |
---|---|---|---|---|---|
url | string | 是 | 开发者服务器接口地址 | ||
data | string/object/ArrayBuffer | 否 | 请求的参数 | ||
header | Object | 否 | 设置请求的 header,header 中不能设置 Referer。content-type 默认为 application/json | ||
method | string | GET | 否 | HTTP 请求方法 | |
dataType | string | json | 否 | 返回的数据格式 | |
responseType | string | text | 否 | 响应的数据类型 | 1.7.0 |
success | function | 否 | 接口调用成功的回调函数 | ||
fail | function | 否 | 接口调用失败的回调函数 | ||
complete | function | 否 | 接口调用结束的回调函数(调用成功、失败都会执行) |
object.method 的合法值
值 | 说明 | 最低版本 |
---|---|---|
OPTIONS | HTTP 请求 OPTIONS | |
GET | HTTP 请求 GET | |
HEAD | HTTP 请求 HEAD | |
POST | HTTP 请求 POST | |
PUT | HTTP 请求 PUT | |
DELETE | HTTP 请求 DELETE | |
TRACE | HTTP 请求 TRACE | |
CONNECT | HTTP 请求 CONNECT |
object.dataType 的合法值
值 | 说明 | 最低版本 |
---|---|---|
json | 返回的数据为 JSON,返回后会对返回的数据进行一次 JSON.parse | |
其他 | 不对返回的内容进行 JSON.parse |
object.responseType 的合法值
值 | 说明 | 最低版本 |
---|---|---|
text | 响应的数据为文本 | |
arraybuffer | 响应的数据为 ArrayBuffer |
object.success 回调函数
参数
Object res
属性 | 类型 | 说明 | 最低版本 |
---|---|---|---|
data | string/Object/Arraybuffer | 开发者服务器返回的数据 | |
statusCode | number | 开发者服务器返回的 HTTP 状态码 | |
header | Object | 开发者服务器返回的 HTTP Response Header | 1.2.0 |
部分weather.wxml代码:
<view class='container'>
<view class='bg'>
<view>
<view><text class='city'>{{weather.country}}.{{weather.city}}</text></view>
<view class='img' ><image style="height:80rpx;width:80rpx" src="../../images/{{image}}.png"></image></view>
<view><text class='tem'>{{weather.data[0].hours[0].tem}}</text></view>
<view><text class='wea'>{{weather.data[0].wea}}</text></view>
<view><text class='wea'>{{weather.data[0].tem1}} / {{weather.data[0].tem2}}</text></view>
<view><text class='wea'>空气{{weather.data[0].air_level}}</text></view>
<view><text class='wea'>{{weather.data[0].win}}</text></view>
<view><text class='wea'>风力{{weather.data[0].win_speed}}</text></view>
<view><text class='wea'>风力{{weather.data[0].air_tips}}</text></view>
<view><text class='wea'>{{weather.data[0].index[0].title}}:{{weather.data[0].index[0].level}}建议:{{weather.data[0].index[0].desc}}</text></view></view>
再利用.wxss随相关显示内容进行布局.