Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
A
apaas-meshproxy
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
gzga-jzapi
apaas-meshproxy
Commits
78b7028e
Commit
78b7028e
authored
May 09, 2020
by
张宇迪
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
服务调用(未实计次入库)
parent
8e6b6c9d
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
23 additions
and
9 deletions
+23
-9
src/handler/proxyhandler.go
src/handler/proxyhandler.go
+4
-9
src/service/field.go
src/service/field.go
+19
-0
No files found.
src/handler/proxyhandler.go
View file @
78b7028e
...
...
@@ -17,7 +17,7 @@ var Resp *http.Response
func
Proxy
(
c
*
gin
.
Context
)
{
appId
:=
c
.
Param
(
"appId"
)
//获取服务相关信息
proxyData
,
err
:=
service
.
GetRealPath
(
appId
)
if
err
!=
nil
{
...
...
@@ -27,14 +27,12 @@ func Proxy(c *gin.Context) {
f
,
_
:=
forward
.
New
(
forward
.
PassHostHeader
(
true
),
forward
.
ResponseModifier
(
func
(
resp
*
http
.
Response
)
error
{
Resp
=
resp
//判断是否可以调用
callflag
,
sensitiveflag
,
err
:=
service
.
QueryCallsCount
(
appId
,
proxyData
)
if
err
!=
nil
{
Return
(
err
.
Error
())
return
nil
}
if
callflag
==
false
{
Return
(
`调用达到当日限定次数`
)
return
nil
...
...
@@ -45,11 +43,11 @@ func Proxy(c *gin.Context) {
var
res
interface
{}
res
=
respbody
//是否需要过滤字段
if
proxyData
.
ResFields
!=
""
{
res
=
service
.
FiledFilter
(
proxyData
,
respbody
)
}
//是否需要屏蔽敏感字段
if
sensitiveflag
==
false
{
res
=
service
.
SensitiveFilter
(
proxyData
,
res
)
}
...
...
@@ -59,11 +57,8 @@ func Proxy(c *gin.Context) {
}))
c
.
Request
.
URL
=
testutils
.
ParseURI
(
proxyData
.
RealUrl
)
c
.
Request
.
RequestURI
=
proxyData
.
RealUrl
c
.
Request
.
Host
=
getHost
(
proxyData
.
RealUrl
)
f
.
ServeHTTP
(
c
.
Writer
,
c
.
Request
)
}
...
...
src/service/field.go
View file @
78b7028e
...
...
@@ -176,8 +176,18 @@ func FilterSensituveField(model interface{}, returnData interface{}) (body inter
if
k
==
k1
{
//flag = true
switch
v
.
(
type
)
{
case
float64
:
returnData
.
(
map
[
string
]
interface
{})[
k
]
=
`xxx`
case
float32
:
returnData
.
(
map
[
string
]
interface
{})[
k
]
=
`xxx`
case
int
:
returnData
.
(
map
[
string
]
interface
{})[
k
]
=
`xxx`
case
bool
:
returnData
.
(
map
[
string
]
interface
{})[
k
]
=
`xxx`
case
string
:
returnData
.
(
map
[
string
]
interface
{})[
k
]
=
`xxx`
default
:
}
FilterSensituveField
(
v
,
v1
)
}
...
...
@@ -197,6 +207,15 @@ func FilterSensituveField(model interface{}, returnData interface{}) (body inter
switch
v
.
(
map
[
string
]
interface
{})[
k1
]
.
(
type
)
{
case
string
:
v
.
(
map
[
string
]
interface
{})[
k1
]
=
`xxx`
case
float64
:
v
.
(
map
[
string
]
interface
{})[
k1
]
=
`xxx`
case
float32
:
v
.
(
map
[
string
]
interface
{})[
k1
]
=
`xxx`
case
int
:
v
.
(
map
[
string
]
interface
{})[
k1
]
=
`xxx`
case
bool
:
v
.
(
map
[
string
]
interface
{})[
k1
]
=
`xxx`
default
:
}
FilterSensituveField
(
v1
,
v2
)
}
...
...
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