/** * 获取cookie配置 * @method config * @param [string] $name [配置变量名] * @return [mixed] [description] * @author NewFuture */ private static function config($name) { if (!($config = self::$_config)) { $config = Config::get('cookie'); if (!($key = Kv::get('COOKIE_aes_key'))) { /*重新生成加密密钥*/ $key = Random::word(32); Kv::set('COOKIE_aes_key', $key); } $config['key'] = $key; self::$_config = $config; } return isset($config[$name]) ? $config[$name] : null; }
/** * 绑定邮箱,发送邮箱验证信息 * PUT /user/1/email {email:"*****@*****.**"} * @method GET_infoAction * @param integer $id [description] * @author NewFuture */ public function POST_emailAction($id = 0) { $id = $this->auth($id); $response['status'] = 0; if (!Input::post('email', $email, 'email')) { $response['info'] = '无效邮箱'; } elseif (UserModel::getByEmail($email)) { $response['info'] = '已经绑定过用户'; } elseif (!Safe::checkTry('bind_email_' . $id)) { $response['info'] = '发送次数过多,12小时之后重试'; } else { /*生成验证码*/ $name = UserModel::where('id', $id)->get('name'); $code = ['use_id' => $id, 'type' => 1]; $Code = new Model('code'); $Code->delete($code); $code['code'] = $id . '_' . Random::word(16); $code['content'] = $email; /*发送邮件*/ if ($Code->insert($code) && Mail::sendVerify($email, $code['code'], $name)) { $response['status'] = 1; $response['info'] = '验证邮件成功发送至:' . $email; } else { $response['info'] = '邮件发送出错[最多还可重发' . Config::get('try.times') . '次]'; } } $this->response = $response; }
/** * 获取加密密钥 * @method key * @return [type] [description] * @author NewFuture */ public static function key() { if (!($key = Kv::get('COOKIE_aes_key'))) { /*重新生成加密密钥*/ $key = Random::word(32); Kv::set('COOKIE_aes_key', $key); } return $key; }