| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340 |
- // 正式
- // const apiHost = 'https://rabbitapi.d5c360.com/'
- // 测试
- // const apiHost = 'https://tapi.d5c360.com/'
- // // 新正式(未审批)
- //const apiHost = 'https://fohowapi.hiwavo.com/'
- // 新测试
- const apiHost = 'https://rapi.hiwavo.com/'
- function $get (url, params, success, fail) {
- wx.showNavigationBarLoading()
- var session = wx.getStorageSync('lbt_session_key')
- wx.request({
- url: apiHost + url,
- data: params,
- method: 'GET',
- header: {
- "content-type": "application/json",
- "terminal": 'mini-program',
- "Cookie": 'fohow_sid=' + session
- },
- success: function (res) {
- callBack(res, success, fail)
- },
- fail: function (res) {
- },
- complete: function (res) {
- wx.hideNavigationBarLoading()
- }
- })
- }
- function $post (url, params, success, fail) {
- wx.showNavigationBarLoading()
- var session = wx.getStorageSync('lbt_session_key')
- wx.request({
- url: apiHost + url,
- data: params,
- method: 'POST',
- header: {
- "content-type": "application/x-www-form-urlencoded",
- "terminal": 'mini-program',
- "Cookie": 'fohow_sid=' + session
- },
- success: function (res) {
- callBack(res, success, fail)
- },
- fail: function (res) {
- },
- complete: function (res) {
- wx.hideNavigationBarLoading()
- }
- })
- }
- function $put (url, params, success, fail) {
- wx.showNavigationBarLoading()
- var session = wx.getStorageSync('lbt_session_key')
- wx.request({
- url: apiHost + url,
- data: params,
- method: 'PUT',
- header: {
- "content-type": "application/x-www-form-urlencoded",
- "terminal": 'mini-program',
- "Cookie": 'fohow_sid=' + session
- },
- success: function (res) {
- callBack(res, success, fail)
- },
- fail: function (res) {
- },
- complete: function (res) {
- wx.hideNavigationBarLoading()
- }
- })
- }
- function $del (url, params, success, fail) {
- wx.showNavigationBarLoading()
- var session = wx.getStorageSync('lbt_session_key')
- wx.request({
- url: apiHost + url,
- data: params,
- method: 'DELETE',
- header: {
- "content-type": "application/x-www-form-urlencoded",
- "terminal": 'mini-program',
- "Cookie": 'fohow_sid=' + session
- },
- success: function (res) {
- callBack(res, success, fail)
- },
- fail: function (res) {
- },
- complete: function (res) {
- wx.hideNavigationBarLoading()
- }
- })
- }
- function callBack (res, success, fail) {
- if (res.statusCode === 200) {
- success(res)
- } else {
- if (fail) {
- fail()
- }
- switch (res.data.err_code) {
- case 'userNeedLogin':
- var pages = getCurrentPages()
- console.log(pages)
- var currentPage = pages[pages.length-1]
- var url = currentPage.route
- var options = currentPage.options
- var params = ''
- console.log(url)
- for (let a in options) {
- params += a + '=' +options[a] + '&'
- }
- if (params) {
- url = '/' + url + '?' + params
- } else {
- url = '/' + url
- }
- console.log(url)
-
- // wx.showToast({
- // title: 'getApp().globalData.try_login'+getApp().globalData.try_login,
- // icon: 'none',
- // duration: 2000
- // })
- // return false;
-
- if (getApp().globalData.try_login) {
- getApp().globalData.try_login = false
- wx.showToast({
- title: '尝试登陆失败,请到个人中心进行授权登陆',
- icon: 'none',
- duration: 2000
- })
- setTimeout(function(){
- wx.switchTab({
- url: '/pages/user/all/all'
- })
- },1000)
- } else {
- wx.login({
- success: res => {
- getApp().globalData.try_login = true;
- pageLogin(res, url)
- }
- })
- }
- break
- default:
- wx.showToast({
- title: res.data.err_msg,
- icon: 'none',
- duration: 2000
- })
- }
- }
- }
- // 登陆接口
- function login (res) {
- var url = 'xcx/login'
- var params = {
- code: res.code
- }
- var success = function (res) {
- wx.setStorageSync('lbt_session_key', res.data.session_key)
- wx.setStorageSync('lbt_session_time', Date.now())
- check()
- }
- $get(url, params, success)
- }
- // 获取授权信息
- function check () {
- var url = 'v1/user/check'
- var params = {
- }
- var success = function (res) {
- console.log('login:id=' + res.data.wx_user_id)
- getApp().globalData.wx_id = res.data.wx_user_id
- }
- $get(url, params, success)
- }
- function getAuthorize () {
- wx.getSetting({
- success: res => {
- var auth = res.authSetting
- if (!auth['scope.userInfo']) {
- setAuthorize()
- }
- }
- })
- }
- // 主动请求授权
- function setAuthorize () {
- wx.authorize({
- scope: 'scope.userInfo',
- success: res => {
- sendInfo()
- },
- fail: res => {
- getAuthorizePopup()
- }
- })
- }
- // 发送个人信息给后端
- function sendInfo (a, channel, invite, that) {
- var userInfo = a.detail
- var str = JSON.stringify(userInfo)
- updateWxUserInfo(str, channel, invite, that)
- }
- // 显示未授权提示弹框
- function getAuthorizePopup () {
- wx.showModal({
- title: '用户未授权',
- content: '如需正常使用FOHOW玖玖,请按确定并在授权管理中选中“用户信息”,然后点按确定。最后再重新进入小程序即可正常使用。',
- showCancel: false,
- success: function (res) {
- if (res.confirm) {
- openAuthorize()
- }
- }
- })
- }
- // 进入授权界面
- function openAuthorize () {
- wx.openSetting({
- success: function (res) {
- var auth = res.authSetting
- if (!auth['scope.userInfo']) {
- // getAuthorizePopup()
- } else {
- sendInfo()
- }
- }
- })
- }
- // 更新个人信息
- function updateWxUserInfo (val, channel, invite, that) {
- var url = 'xcx/authorize'
- var params = {
- userinfo: val,
- channel: channel,
- invite_id: invite
- }
- var success = function (res) {
- wx.hideLoading()
- that.setData({
- popup: false
- })
- that.getVersion(500)
- }
- $post(url, params, success)
- }
- function pageLogin (res, str) {
- var url = 'xcx/login'
- var params = {
- code: res.code
- }
- var success = function (res) {
- console.log('pageLogin',res);
- if(res.wx_user){
- wx.setStorageSync('lbt_session_key', res.data.session_key)
- wx.setStorageSync('lbt_session_time', Date.now())
- wx.redirectTo({
- url: str
- })
- }else{
- wx.showToast({
- title: '尝试登陆失败,请到个人中心进行授权登陆',
- icon: 'none',
- duration: 2000
- })
- }
- }
- $get(url, params, success)
- }
- function share (val) {
- var url = ''
- var image = ''
- var title = val.title || '欢迎来到FOHOW玖玖'
- if (val.path) {
- if (val.path.indexOf('?') > -1) {
- url = val.path + '&invite=' + getApp().globalData.wx_id
- } else {
- url = val.path + '?invite=' + getApp().globalData.wx_id
- }
- } else {
- url = '/pages/start/start?invite=' + getApp().globalData.wx_id
- }
- if (getApp().globalData.wx_id === 0) {
- title = '·' + title
- }
- if (val.imageUrl === undefined) {
- image = 'http://fohow.oss-cn-shenzhen.aliyuncs.com/xcx/share/sharemain.jpg'
- } else {
- image = val.imageUrl
- }
- console.log(title)
- return {
- title: title,
- path: url,
- imageUrl: image,
- success: function (res) {
- shareInfo(val)
- }
- }
- }
- function shareInfo (val) {
- var url = 'v1/share/info'
- var params = {
- sc: val.sc || 'xcx',
- ri: val.ri || 0,
- rp: val.rp || 0,
- to: 'group'
- }
- var success = function (val) {
- }
- $post(url, params, success)
- }
- module.exports = {
- $post: $post,
- $put: $put,
- $get: $get,
- $del: $del,
- login: login,
- getAuthorize: getAuthorize,
- updateWxUserInfo: updateWxUserInfo,
- sendInfo: sendInfo,
- share: share
- }
|