diff --git a/uni_modules/uni-id-pages/uniCloud/cloudfunctions/uni-id-co/common/error.js b/uni_modules/uni-id-pages/uniCloud/cloudfunctions/uni-id-co/common/error.js index d026fe7ce25468661eef966bcee1761b4c1efe91..cf267def47c57957f6d99b1b9acf7028073e415b 100644 --- a/uni_modules/uni-id-pages/uniCloud/cloudfunctions/uni-id-co/common/error.js +++ b/uni_modules/uni-id-pages/uniCloud/cloudfunctions/uni-id-co/common/error.js @@ -38,7 +38,8 @@ const ERROR = { UNBIND_PASSWORD_NOT_EXISTS: 'uni-id-unbind-password-not-exists', UNBIND_MOBILE_NOT_EXISTS: 'uni-id-unbind-mobile-not-exists', UNSUPPORTED_REQUEST: 'uni-id-unsupported-request', - ILLEGAL_REQUEST: 'uni-id-illegal-request' + ILLEGAL_REQUEST: 'uni-id-illegal-request', + CONFIG_FIELD_REQUIRED: 'uni-id-config-field-required' } function isUniIdError (errCode) { diff --git a/uni_modules/uni-id-pages/uniCloud/cloudfunctions/uni-id-co/lang/en.js b/uni_modules/uni-id-pages/uniCloud/cloudfunctions/uni-id-co/lang/en.js index d329d018579bf1a4d24c1c21594410f95741a304..6f1dae39013bcb85ba74ecf7eeb50bade41bd284 100644 --- a/uni_modules/uni-id-pages/uniCloud/cloudfunctions/uni-id-co/lang/en.js +++ b/uni_modules/uni-id-pages/uniCloud/cloudfunctions/uni-id-co/lang/en.js @@ -43,7 +43,8 @@ const sentence = { 'uni-id-unbind-mobile-not-exists': 'This is the only way to login at the moment, please bind your phone number and then try to unbind', 'uni-id-unbind-password-not-exists': 'Please set a password first', 'uni-id-unsupported-request': 'Unsupported request', - 'uni-id-illegal-request': 'Illegal request' + 'uni-id-illegal-request': 'Illegal request', + 'uni-id-config-field-required': 'Config field required: {field}' } module.exports = { diff --git a/uni_modules/uni-id-pages/uniCloud/cloudfunctions/uni-id-co/lang/zh-hans.js b/uni_modules/uni-id-pages/uniCloud/cloudfunctions/uni-id-co/lang/zh-hans.js index 3c69c9ff19f8e0311e092fe22e1b9068b8493f1f..f7ab079bd5ca6ff3173d653a549de7d89b460c5c 100644 --- a/uni_modules/uni-id-pages/uniCloud/cloudfunctions/uni-id-co/lang/zh-hans.js +++ b/uni_modules/uni-id-pages/uniCloud/cloudfunctions/uni-id-co/lang/zh-hans.js @@ -45,7 +45,8 @@ const sentence = { 'uni-id-unbind-mobile-not-exists': '这是当前唯一登录方式,请绑定手机号后再尝试解绑', 'uni-id-unbind-password-not-exists': '请先设置密码在尝试解绑', 'uni-id-unsupported-request': '不支持的请求方式', - 'uni-id-illegal-request': '非法请求' + 'uni-id-illegal-request': '非法请求', + 'uni-id-config-field-required': '缺少配置项: {field}' } module.exports = { diff --git a/uni_modules/uni-id-pages/uniCloud/cloudfunctions/uni-id-co/middleware/verify-request-sign.js b/uni_modules/uni-id-pages/uniCloud/cloudfunctions/uni-id-co/middleware/verify-request-sign.js index e695a404767c3a7d167048fbb2e3e0795da0b0f4..3f5feed960252d8015dbf6060553691a1257a877 100644 --- a/uni_modules/uni-id-pages/uniCloud/cloudfunctions/uni-id-co/middleware/verify-request-sign.js +++ b/uni_modules/uni-id-pages/uniCloud/cloudfunctions/uni-id-co/middleware/verify-request-sign.js @@ -20,6 +20,15 @@ module.exports = function () { } } + if (!this.config.requestAuthSecret || typeof this.config.requestAuthSecret !== 'string') { + throw { + errCode: ERROR.CONFIG_FIELD_REQUIRED, + errMsgVal: { + field: 'requestAuthSecret' + } + } + } + const timeout = 20 * 1000 // 请求超过20秒不能再请求,防止重放攻击 const { headers, body: _body } = this.getHttpInfo() const { 'uni-id-nonce': nonce, 'uni-id-timestamp': timestamp, 'uni-id-signature': signature } = headers