支付宝小程序的 my.request({.........})
支付宝官网有对请求的基本描述,但似乎缺少一部分重点,就是关于如何取出其中的值,所以,小弟废话不多说,直接上内容,点击按钮,发送网络请求如下(服务器返回数据的最外层结构写在博客的最后):
my.request({
url: 'http://127.0.0.1:8080/base/person/data', // 目标服务器url
headers: { 'content-type': 'application/json' },
method: 'GET',
data: {},
dataType: 'json',
//请求成功
success: function (res) {
console.info("响应码:" + res.status);
var ss = JSON.stringify(res.data);
console.info("ss-----------------> " + ss);//服务器返回的json数据
console.info("ss.status-----------------> " + JSON.parse(ss).status);
var resultMap = JSON.stringify(JSON.parse(ss).resultMap);
console.info("resultMap-----------------> " + resultMap);
var user2 = JSON.parse(resultMap)[1];
console.info("user0-----------------> " + JSON.stringify(user2));
console.info("user0.name-----------------> " + (user2.name));
my.alert({
title: '用户' + user2.name + '发送网络请求成功',
});
},
//请求失败
fail: function (res) {
console.info("fail");
},
//请求完成
complete: function (res) {
//console.info("complete");
// my.alert({content: 'complete'});
},
});
执行完结果打印的log如下:
响应码:200
ss-----------------> {"message":"处理成功","resultMap":[{"createTime":null,"createUserId":null,"id":"1","job":"android","modifyTime":"2019-05-27 09:51:28","modifyUserId":null,"name":"laughing952suadaj","rowver":1},{"createTime":null,"createUserId":null,"id":"2","job":"android","modifyTime":null,"modifyUserId":null,"name":"laughing","rowver":0},{"createTime":"2019-05-21 07:35:13","createUserId":null,"id":"3","job":"asd","modifyTime":null,"modifyUserId":null,"name":"asdf","rowver":1},{"createTime":"2019-05-30 01:04:47","createUserId":null,"id":"12","job":"android开发工程师","modifyTime":null,"modifyUserId":null,"name":"yuanchao","rowver":1},{"createTime":"2019-06-24 01:54:11","createUserId":null,"id":"13","job":"阿斯顿发生","modifyTime":null,"modifyUserId":null,"name":"阿萨德还放假哈四大皆空","rowver":1}],"status":200,"timestamp":1561530972318}
ss.status-----------------> 200
resultMap-----------------> [{"createTime":null,"createUserId":null,"id":"1","job":"android","modifyTime":"2019-05-27 09:51:28","modifyUserId":null,"name":"laughing952suadaj","rowver":1},{"createTime":null,"createUserId":null,"id":"2","job":"android","modifyTime":null,"modifyUserId":null,"name":"laughing","rowver":0},{"createTime":"2019-05-21 07:35:13","createUserId":null,"id":"3","job":"asd","modifyTime":null,"modifyUserId":null,"name":"asdf","rowver":1},{"createTime":"2019-05-30 01:04:47","createUserId":null,"id":"12","job":"android开发工程师","modifyTime":null,"modifyUserId":null,"name":"yuanchao","rowver":1},{"createTime":"2019-06-24 01:54:11","createUserId":null,"id":"13","job":"阿斯顿发生","modifyTime":null,"modifyUserId":null,"name":"阿萨德还放假哈四大皆空","rowver":1}]
user2-----------------> {"createTime":null,"createUserId":null,"id":"2","job":"android","modifyTime":null,"modifyUserId":null,"name":"laughing","rowver":0}
user2.name-----------------> laughing
请求成功弹框,如下:
本人的数据库表如下:
服务器ResultMap对应的 java 实体类 ,如下:
/** * 作者: Laughing on 2019-5-10 17:44. * 邮箱:[email protected] */ public class ResultMap<T> { /** * status : 4020 * message : 用户不存在! * resultMap : null */ private int status;//状态 private String message;//消息 private T resultMap;//数据主体 @JsonInclude(JsonInclude.Include.NON_NULL)//不等于空时赋值 url给它,==null时,不返回到客户端 private String exceptURL;//异常的网址 private Timestamp timestamp = new Timestamp(System.currentTimeMillis());//时间戳 public ResultMap() { } /** * 有参构造器 * @param resultEnum */ public ResultMap(ResultEnum resultEnum) { this.status = resultEnum.getStatus(); this.message = resultEnum.getMessage(); } public int getStatus() { return status; } public void setStatus(int status) { this.status = status; } public String getMessage() { return message; } public void setMessage(String message) { this.message = message; } public T getResultMap() { return resultMap; } public void setResultMap(T resultMap) { this.resultMap = resultMap; } public Timestamp getTimestamp() { return timestamp; } public void setTimestamp(Timestamp timestamp) { this.timestamp = timestamp; } public String getExceptURL() { return exceptURL; } public void setExceptURL(String exceptURL) { this.exceptURL = exceptURL; } @Override public String toString() { return "ResultMap{" + "status=" + status + ", message='" + message + '\'' + ", resultMap=" + resultMap + ", exceptURL='" + exceptURL + '\'' + ", timestamp=" + timestamp + '}'; } }