diff --git a/pages/menu/collection/index.vue b/pages/menu/collection/index.vue index 8013e69..75877f0 100644 --- a/pages/menu/collection/index.vue +++ b/pages/menu/collection/index.vue @@ -115,21 +115,27 @@ } }, // 拿收藏品 - getCollection(){ - uni.request({ - url: 'http://wallet-api.weirui0755.com/api/nft/getNftProjectList?address='+this.address, //请求接口 - header: { - 'content-type': 'application/x-www-form-urlencoded', //自定义请求头信息 - }, - success: (res) => { - this.collectinInfo=res.data.data - console.log(this.collectinInfo,2222) - }, - fail(err) { - console.log(err,2222) - } + async getCollection(){ + let params = { + address: this.address + } + const post = await this.$api.getNftProjectList(params) + this.collectinInfo=post.data.data + console.log(this.collectinInfo,2222) + // uni.request({ + // url: 'http://wallet-api.weirui0755.com/api/nft/getNftProjectList?address='+this.address, //请求接口 + // header: { + // 'content-type': 'application/x-www-form-urlencoded', //自定义请求头信息 + // }, + // success: (res) => { + // this.collectinInfo=res.data.data + // console.log(this.collectinInfo,2222) + // }, + // fail(err) { + // console.log(err,2222) + // } - }); + // }); }, goDetail2(itemm,index){ uni.setStorageSync('proid',this.test.id) diff --git a/utils/SystemConfiguration.js b/utils/SystemConfiguration.js index 9da15f2..56a91e2 100644 --- a/utils/SystemConfiguration.js +++ b/utils/SystemConfiguration.js @@ -1,8 +1,12 @@ -let isTest = true; +let isTest = true; const constant = isTest ? { - btcDataUrl:'' -}:{ + //服务端连接 + serverUrl: 'http://wallet-api.weirui0755.com/' + +} : { + //服务端连接 + serverUrl: 'http://wallet-api.weirui0755.com/' } diff --git a/utils/api.js b/utils/api.js index c5ae049..8122dcc 100644 --- a/utils/api.js +++ b/utils/api.js @@ -1,30 +1,7 @@ import Vue from 'vue'; import qs from 'qs' const api = { - //---------------------------------account--------------------------------- - siteInfo: () => Vue.prototype.$axios.get('/api/home/siteInfo'), - // address: (params) => Vue.prototype.$axios.post('/api/eth/address',params), - appVersion: (params) => Vue.prototype.$axios.get('/api/home/versionUpgrade?' + qs.stringify(params)), - address: (params) => Vue.prototype.$axios.get('/eth/api/eth/address/normal/' + params.address + '/' + params - .pageNum + '/' + params.pageSize), - // appVersion: (params) => Vue.prototype.$axios.get('/api/home/versionUpgrade?'+qs.stringify(params)) - // addressbtc: (params) => Vue.prototype.$axios.get('/btc/api/address/btc/?'+qs.stringify(params)), - addressbtc: (params) => Vue.prototype.$axios.get('/btc/api/address/btc/' + params.address + '/' + params - .pageNum + '/' + params.pageSize), - addresstrx: (params) => Vue.prototype.$axios.get('/trx/api/trx/address/normal/' + params.address + '/' + params - .pageNum + '/' + params.pageSize), - - // 拿btc余额 - getBtcBalance: () => Vue.prototype.$axios.get( - '/btc/api/address/balancetrend/btc/1AgypUbAc4joKjsiVd66mtemwXgFKXWa1R'), - getOtherCoin: (params) => Vue.prototype.$axios.get('/api/contract/getContractInfoList/ETH'), - - addressOther: (params) => Vue.prototype.$axios.get('/eth/api/eth/address/tokentrans/' + params.address2 + '/' + - params.address + '/' + params.pageNum + '/' + params.pageSize), - - - // 质押地址 - // getPledgeAddress: (params) => Vue.prototype.$axios.get('/api/identity/getPledgeAddress/'+params), + getNftProjectList: (params) => Vue.prototype.$axios.get('/api/nft/getNftProjectList?' + qs.stringify(params)), //--------------------------------- free --------------------------------- diff --git a/utils/axios.js b/utils/axios.js index 6690a55..7cd2fc5 100644 --- a/utils/axios.js +++ b/utils/axios.js @@ -1,202 +1,94 @@ import Vue from 'vue' import axios from 'axios' -import qs from 'qs' -import md5 from 'js-md5'; -import constant from './constant.js'; +import SystemConfiguration from './SystemConfiguration.js'; -// #ifdef H5 -let baseURL = constant.H5 -let key = constant.H5_KEY -// #endif -// #ifdef APP-PLUS -let baseURL = constant.APP -let key = constant.APP_KEY -// #endif +let baseURL = SystemConfiguration.constant const service = axios.create({ - withCredentials: true, + withCredentials: false, //表示跨域请求时是否需要使用凭证 crossDomain: true, - baseURL, + // baseURL, timeout: 160000 }) -// request拦截器,在请求之前做一些处理 -// service.interceptors.request.use( -// config => { -// // console.log('showDialog' + Vue.prototype.$showDialog) -// if (Vue.prototype.$showDialog) { -// uni.showLoading({ -// title: 'loading', -// mask: true -// }) -// } -// const ticket = uni.getStorageSync('ticket') -// let dataStr = []; -// if (config.method == 'get') { -// if (config.url.split('?').length > 1) { -// dataStr = config.url.split('?')[1].split('&'); -// } - -// } -// if (config.method == 'post') { -// dataStr = qs.stringify(config.data).split('&'); -// // dataStr = JSON.stringify(config.data); -// // dataStr = config.data; - -// // dataStr = config.data.name; - -// } -// config.data = {}; -// dataStr.forEach(function(e) { -// console.log(e,666666) -// config.data[e.split('=')[0]] = e.split('=')[1]; -// }); -// // console.log(ticket) -// if (ticket != '') { -// config.data['ticket'] = ticket -// } -// var keys = []; -// let sign = ''; -// for (var k in config.data) -// keys.push(k); -// keys.sort(function(a, b) { -// return a < b ? -1 : 1; -// }) -// // console.log("keys==========="); -// keys.forEach(function(e) { -// if (config.data[e] || config.data[e] == '') { -// sign += e + '=' + config.data[e] + '&' -// } - -// }); - -// // console.log("签名参数==========="); -// // console.log(config.url); -// // console.log(sign + key); -// sign = md5(sign + key); -// // console.log("提交参数==========="); -// // console.log(qs.stringify(config.data)); -// if (config.method == 'post') { -// // console.log(config.data,666666) -// config.data['sign'] = sign -// config.data = qs.stringify(config.data) -// // config.data = config.data.replace(/(\w+)\s*, \s*(\w+)/, "$2 $1"); -// // if(config.url == ){ - -// // #ifdef H5 -// if(config.url=='/api/index/goodsList'){ -// config.data = config.data.replaceAll('20', ""); -// config.data = config.data.replaceAll('26', ""); -// config.data = config.data.replaceAll('2F', "/"); -// config.data = config.data.replaceAll('28', ""); -// config.data = config.data.replaceAll('29', ""); -// // config.data = config.data.replaceAll('%C2%AE', "®"); -// } -// // #endif -// // #ifdef APP-PLUS -// if(config.url=='/api/index/goodsList'){ -// config.data = config.data.replace(new RegExp('20',"gm"), ""); -// config.data = config.data.replace(new RegExp('26',"gm"), ""); -// config.data = config.data.replace(new RegExp('2F',"gm"), "/"); -// config.data = config.data.replace(new RegExp('28',"gm"), ""); -// config.data = config.data.replace(new RegExp('29',"gm"), ""); -// // config.data = config.data.replaceAll('%C2%AE', "®"); -// } -// // #endif +// request请求拦截器,在请求之前做一些处理 +service.interceptors.request.use( + config => { + console.log(config) + uni.showLoading({ + title: 'loading', + mask: true + }) + console.log('============================') + if (config.urlType == 'eth') { + config.url = baseURL.serverUrl + config.url + console.log(config.url) + } else { -// // config.data = config.data.replaceAll('2528',"("); -// // config.data = config.data.replaceAll('2529',")"); -// // config.data = config.data.replaceAll('252',"%2F"); - -// // } - -// } -// if (config.method == 'get') { -// if (ticket != '') { -// config.url = config.url + '&ticket=' + ticket + '&sign=' + sign -// } else { -// config.url = config.url + '?sign=' + sign -// } -// } -// // console.log(config) -// return config; -// }, -// error => { -// // console.log(error); // for debug -// return Promise.reject(error); -// } -// ); - -// //配置成功后的拦截器 -// service.interceptors.response.use(res => { -// console.log('过期了吗') -// uni.hideLoading() -// // console.log(res) -// // console.log(res.data) -// // console.log(res.data.data[0].nameAlias) -// if (res.data.success || res.data.errCode === 'USER.0017') { -// // console.log(res.data.success) -// return res.data -// } else { -// uni.showToast({ -// title: res.data.errMsg, -// icon: 'none', -// duration: 1500 -// }) -// if (res.data.errCode === 'USER.0010') { + config.url = baseURL.serverUrl + config.url + } -// uni.removeStorage({ -// key: 'logInfo', -// success: function (res) { -// uni.reLaunch({url: '/pages/login/index'}) -// }, -// fail: (err) => { -// } -// }); - - -// // #ifdef H5 -// var url = location.href; -// if(url.indexOf('pages')>-1){ -// uni.setStorage({ -// key: 'url', -// data: url, -// success: function() { -// console.log('success') -// } -// }); -// }else{ -// uni.removeStorageSync('url') -// } -// // #endif - -// } -// uni.$emit('refreshQrCode') -// return Promise.reject(res.data.errMsg); -// } -// }, error => { -// return Promise.reject(error) -// }) + // if (token) { + // // config.headers['Authori-zation'] = token + // config.headers['Authorization'] = token + // } + // console.log(config) + // if (store.state.token) { + // // 给请求头添加user-token + // config.headers["user-token"] = store.state.token; + // } + console.log('请求之前成功') + return config; + }, + error => { + console.log(error); // for debug + return Promise.reject(error); + } +); +// 配置成功后的响应拦截器 +service.interceptors.response.use(res => { + uni.hideLoading() + console.log(res) + if (res.status == 200) { + return res.data + } else { + return Promise.reject(res.msg); + } +}, error => { + // if (error.response.status) { + // switch (error.response.status) { + // case 401: + // break; + // default: + // break; + // } + // } + return Promise.reject(error) +}) -axios.defaults.adapter = function(config) { //自己定义个适配器,用来适配uniapp的语法 +// 在main.js中放入这段自定义适配器的代码,就可以实现uniapp的app和小程序开发中能使用axios进行跨域网络请求,并支持携带cookie +axios.defaults.adapter = function(config) { return new Promise((resolve, reject) => { - // console.log(config) + console.log(config) var settle = require('axios/lib/core/settle'); var buildURL = require('axios/lib/helpers/buildURL'); - + + if(config.baseURL == SystemConfiguration.constant.tronChainUrl){ + // return; + config.url = config.baseURL + '/' + config.url + // console.log(config.url) + } uni.request({ method: config.method.toUpperCase(), - // url: config.baseURL + buildURL(config.url, config.params, config.paramsSerializer), - url: config.baseURL + '/' + config.url, + url: buildURL(config.url, config.params, config.paramsSerializer), header: config.headers, data: config.data, dataType: config.dataType, responseType: config.responseType, sslVerify: config.sslVerify, complete: function complete(response) { - //console.log("执行完成:",config.baseURL + buildURL(config.url, config.params, config.paramsSerializer),response.data) response = { data: response.data, status: response.statusCode, @@ -204,17 +96,12 @@ axios.defaults.adapter = function(config) { //自己定义个适配器,用来 header: response.header, config: config }; - + // console.log(response) settle(resolve, reject, response); - }, - fail: res => { - uni.showToast({ - title: res, - icon: 'none', - duration: 1500 - }) } }) }) } + + export default service