123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- const { ERROR } = require('./error')
- function getHttpClientInfo () {
- const requestId = this.getUniCloudRequestId()
- const { clientIP, userAgent, source, secretType = 'none' } = this.getClientInfo()
- const { clientInfo = {} } = JSON.parse(this.getHttpInfo().body)
- return {
- ...clientInfo,
- clientIP,
- userAgent,
- source,
- secretType,
- requestId
- }
- }
- function getHttpUniIdToken () {
- const { uniIdToken = '' } = JSON.parse(this.getHttpInfo().body)
- return uniIdToken
- }
- function verifyHttpMethod () {
- const { headers, httpMethod } = this.getHttpInfo()
- if (!/^application\/json/.test(headers['content-type']) || httpMethod.toUpperCase() !== 'POST') {
- throw {
- errCode: ERROR.UNSUPPORTED_REQUEST,
- errMsg: 'unsupported request'
- }
- }
- }
- function universal () {
- if (this.getClientInfo().source === 'http') {
- verifyHttpMethod.call(this)
- this.getParams()[0] = JSON.parse(this.getHttpInfo().body).params
- this.getUniversalClientInfo = getHttpClientInfo.bind(this)
- this.getUniversalUniIdToken = getHttpUniIdToken.bind(this)
- } else {
- this.getUniversalClientInfo = this.getClientInfo
- this.getUniversalUniIdToken = this.getUniIdToken
- }
- }
- module.exports = universal
|