helper.js 1023 Bytes
import Store from '../store/index'
import request from './request'

export default class Helper {
    constructor() {
    }

    static getUrlKey(name) {
        return decodeURIComponent((new RegExp('[?|&]' + name + '=' + '([^&;]+?)(&|#|;|$)').exec(location.href) || [, ''])[1].replace(/\+/g, '%20')) || null
    }

    static getToken() {
        return this.getUrlKey('token')
    }

    static verifyToken() {
        const token = this.getToken()
        if (!token) {
            return Store.commit('showMessage', {type: 'error', message: '非法访问'})
        }

        return request.get('auth').then(res => {
            const {esm_id} = res.data
            return Promise.resolve({id: esm_id, sign: window.genTestUserSig(esm_id).userSig})
        })
    }

    static contactList() {
        return request.get('im/contacts')
    }

    static groupList(params = {}) {
        return request.get('im/groups', {params})
    }

    static joinGroup(id) {
        return request.put(`im/groups/${id}`)
    }
}