Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
F
financial-system
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
xianyang
financial-system
Commits
985e20d4
Commit
985e20d4
authored
Mar 20, 2023
by
xianyang
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
验证码 验证
parent
03b1e1bb
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
21 additions
and
3 deletions
+21
-3
views.py
app/api/users/views.py
+6
-0
env.py
core/config/env.py
+12
-1
img_code.py
libs/img_code.py
+2
-2
requirements.txt
requirements.txt
+1
-0
No files found.
app/api/users/views.py
View file @
985e20d4
...
@@ -8,6 +8,7 @@ from app.api.statement.guild import query_token
...
@@ -8,6 +8,7 @@ from app.api.statement.guild import query_token
from
app.api.users
import
crud
,
schemas
from
app.api.users
import
crud
,
schemas
from
app.api.users.login_verification
import
authenticate_user
,
create_access_token
,
get_user
,
authenticate_pwd
from
app.api.users.login_verification
import
authenticate_user
,
create_access_token
,
get_user
,
authenticate_pwd
from
app.api.users.schemas
import
UserLoginForm
,
GoogleCode
,
GoogleLogin
from
app.api.users.schemas
import
UserLoginForm
,
GoogleCode
,
GoogleLogin
from
core.config.env
import
red
from
libs.google_code
import
get_qrcode
,
google_verify_result
from
libs.google_code
import
get_qrcode
,
google_verify_result
from
libs.img_code
import
imageCode
from
libs.img_code
import
imageCode
from
libs.result_format
import
HttpResultResponse
,
HttpMessage
from
libs.result_format
import
HttpResultResponse
,
HttpMessage
...
@@ -24,6 +25,11 @@ def img_code():
...
@@ -24,6 +25,11 @@ def img_code():
@
router
.
post
(
"/login"
)
@
router
.
post
(
"/login"
)
def
login
(
form_data
:
UserLoginForm
,
db
:
Session
=
Depends
(
get_db
)):
def
login
(
form_data
:
UserLoginForm
,
db
:
Session
=
Depends
(
get_db
)):
user_info
=
authenticate_user
(
db
=
db
,
form_data
=
form_data
)
user_info
=
authenticate_user
(
db
=
db
,
form_data
=
form_data
)
code
=
red
.
get
(
'VerifyCode'
)
if
not
code
:
return
HttpResultResponse
(
code
=
500
,
msg
=
"验证码已过期"
)
if
form_data
.
verify
!=
code
:
return
HttpResultResponse
(
code
=
500
,
msg
=
"验证码错误"
)
if
not
user_info
.
get
(
"result"
):
if
not
user_info
.
get
(
"result"
):
return
HttpResultResponse
(
code
=
500
,
msg
=
user_info
.
get
(
"msg"
),
data
=
{})
return
HttpResultResponse
(
code
=
500
,
msg
=
user_info
.
get
(
"msg"
),
data
=
{})
return
HttpResultResponse
(
msg
=
HttpMessage
.
LOGIN_SUCCESS
,
data
=
{
"google_key"
:
user_info
.
get
(
"google_key"
)})
return
HttpResultResponse
(
msg
=
HttpMessage
.
LOGIN_SUCCESS
,
data
=
{
"google_key"
:
user_info
.
get
(
"google_key"
)})
...
...
core/config/env.py
View file @
985e20d4
...
@@ -4,7 +4,7 @@
...
@@ -4,7 +4,7 @@
"""
"""
import
os
import
os
import
redis
from
pydantic
import
BaseSettings
from
pydantic
import
BaseSettings
from
qcloud_cos
import
CosConfig
from
qcloud_cos
import
CosConfig
from
qcloud_cos
import
CosS3Client
from
qcloud_cos
import
CosS3Client
...
@@ -44,6 +44,12 @@ class Env(BaseSettings):
...
@@ -44,6 +44,12 @@ class Env(BaseSettings):
"pwd"
:
"c1ea602311a369f6"
,
"pwd"
:
"c1ea602311a369f6"
,
"user"
:
"root"
"user"
:
"root"
}
}
Redis
:
dict
=
{
"host"
:
"43.138.132.9"
,
"password"
:
"fanjiao2022"
,
"port"
:
6379
,
"redis_db"
:
9
}
SECRET_KEY
:
str
=
"09d25e094faa6ca2556c818166b7a9563b93f7099f6f0f4caa6cf63b88e8d3e7"
SECRET_KEY
:
str
=
"09d25e094faa6ca2556c818166b7a9563b93f7099f6f0f4caa6cf63b88e8d3e7"
ALGORITHM
:
str
=
"HS256"
ALGORITHM
:
str
=
"HS256"
PASSWORD
:
str
=
"fj123456"
PASSWORD
:
str
=
"fj123456"
...
@@ -65,3 +71,8 @@ class ProdEnv(Env):
...
@@ -65,3 +71,8 @@ class ProdEnv(Env):
env
=
Env
()
# 开发环境
env
=
Env
()
# 开发环境
# env = TestingEnv() # 测试环境
# env = TestingEnv() # 测试环境
# env = ProdEnv() # 生产环境
# env = ProdEnv() # 生产环境
redis_data
=
env
.
Redis
pool
=
redis
.
ConnectionPool
(
host
=
redis_data
.
get
(
"host"
),
port
=
redis_data
.
get
(
"port"
),
password
=
redis_data
.
get
(
"password"
),
db
=
redis_data
.
get
(
"redis_db"
),
decode_responses
=
True
)
red
=
redis
.
StrictRedis
(
connection_pool
=
pool
)
libs/img_code.py
View file @
985e20d4
...
@@ -6,7 +6,7 @@ import requests
...
@@ -6,7 +6,7 @@ import requests
from
PIL
import
Image
,
ImageFont
,
ImageDraw
from
PIL
import
Image
,
ImageFont
,
ImageDraw
from
six
import
BytesIO
from
six
import
BytesIO
from
core.config.env
import
client
,
Bucket
,
secret_key
,
region
,
secret_id
,
COS_PATH
,
COS_RERURN_PATH
from
core.config.env
import
client
,
Bucket
,
secret_key
,
region
,
secret_id
,
COS_PATH
,
COS_RERURN_PATH
,
red
session
=
requests
.
session
()
session
=
requests
.
session
()
...
@@ -61,7 +61,7 @@ class imageCode():
...
@@ -61,7 +61,7 @@ class imageCode():
buf_str
=
buf
.
getvalue
()
buf_str
=
buf
.
getvalue
()
img
=
b
"data:image/png;base64,"
+
base64
.
b64encode
(
buf_str
)
img
=
b
"data:image/png;base64,"
+
base64
.
b64encode
(
buf_str
)
session
.
headers
[
'verify'
]
=
code
session
.
headers
[
'verify'
]
=
code
print
(
code
)
red
.
set
(
'VerifyCode'
,
code
,
100
)
return
img
.
decode
(
'utf-8'
)
return
img
.
decode
(
'utf-8'
)
...
...
requirements.txt
View file @
985e20d4
...
@@ -43,3 +43,4 @@ urllib3==1.26.14
...
@@ -43,3 +43,4 @@ urllib3==1.26.14
uvicorn
==0.20.0
uvicorn
==0.20.0
xmltodict
==0.13.0
xmltodict
==0.13.0
openpyxl
==3.1.2
openpyxl
==3.1.2
redis
==4.3.4
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment