Socket
Book a DemoInstallSign in
Socket

@efox/emp-lib-base

Package Overview
Dependencies
Maintainers
17
Versions
5
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@efox/emp-lib-base

## 目录

latest
npmnpm
Version
0.0.5
Version published
Weekly downloads
1
Maintainers
17
Weekly downloads
 
Created
Source

EMP Lib Base

目录

  • 客户端协议
  • 请求实例
  • service通道连接
  • 常量
  • 通用函数

客户端协议

包含ME、多玩语音、寻你协议,部分功能对应app并未支持,将采用兼容处理

协议描述

请求实例

  • 普通请求
  • 营收请求
  • 多语言请求
  • 阿里云Oss上传

普通请求

// example
type API_DATA<T> = {
  code: number
  data: T
  message: string
}

const request = createGetter(`//unionvoice-act.joyyinc.com`)

const fightMonster = (data: {
  sid: number
  ssid?: number
  zodiacId: number
}): Promise<
  API_DATA<{
    bizId: number
    userId: number
    userPropCnt: number
    sid: number
    ssid: number
    zodiacId: number
    zodiacStatus: 0 | 1 | 2 | 3
    zodiacRealHp: number
    resultMsg: string
    awardName: string
  }>
> => request(`/api/zodiac/attackZodiac`, data).catch(err => err)

营收请求

type API_DATA<T> = {
  code: number
  data: T
  message: string
}

const request = createGetter(`//unionvoice-act.joyyinc.com`)

const fightMonster = (data: {
  sid: number
  ssid?: number
  zodiacId: number
}): Promise<
  API_DATA<{
    bizId: number
    userId: number
    userPropCnt: number
    sid: number
    ssid: number
    zodiacId: number
    zodiacStatus: 0 | 1 | 2 | 3
    zodiacRealHp: number
    resultMsg: string
    awardName: string
  }>
> => request(`/api/zodiac/attackZodiac`, data, {turnover:true}).catch(err => err)

多语言请求

const getChristmasRankConfig = langGetter('/ME1/christmasRank/zh-hans.json')

阿里云Oss上传

需要区分业务,目前只接入me

OssClient实例

import {uploadOss} from 'src/helpers/fetch'

const onChange = async (e: any) => {
  const file: File = e.target.files[0]
  const {OssClient, OssData} = await uploadOss()
  try {
    const {url} = await OssClient.put(OssData.fileName, file)
  } catch (e) {
    console.error(e)
  }
}

// template
<input type='file' onChange={onChange} />

service通道连接

// init
import {SvcAssemble} from '@emp-react-lib/base/helpers/service'
import {BIZ_ID} from '@emp-react-lib/base/helpers/browser'

const ClientApi = await getAppApi(BIZ_ID)
  const appid = '12345'
  const {uid} = await ClientApi.getUserInfo()
  const {otp} = await ClientApi.getUserTicket()

await SvcAssemble.init({
    appid,
    uid: uid + '',
    otp,
    region: 'cn',
    groupType: Number('xxxxx'),
    groupId: (await ClientApi.getRoomId())[0],
  })

// receiver data
import {useServiceData} from '@emp-react-lib/base/helpers/service'
import {PBDecode} from '@emp-react-lib/base/helpers/utils/pb'

// hook
useServiceData(
  `12345_${fnName_SvcName}_${messageName}`,
  async data => {
    const decodeData = PBDecode({
      clzName: 'ZodiacData',
      root: await import('src/proto/zodiac_broadcast.proto'),
      data,
    })
  },
  self,
)

常量

import {USER_HEAD, UNION_HEAD, UDB_APPID, SVC_GROUP_TYPE} from '@emp-react-lib/base/helpers/constant'

// 默认头像
USER_HEAD

// 工会头像
UNION_HEAD

// UDB APPID
UDB_APPID

// SVC_GROUP_TYPE
SVC_GROUP_TYPE

通用函数

// 

FAQs

Package last updated on 16 Mar 2021

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts