Skip to content
Toggle navigation
Toggle navigation
This project
Loading...
Sign in
Cong.Zhao
/
musician-api.hikoon.com
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Network
Create a new issue
Builds
Commits
Issue Boards
Files
Commits
Network
Compare
Branches
Tags
Commit
4f52db95
...
4f52db95e97eaf8947e776b4cca0374bf1f1a35b
authored
2022-10-26 17:08:31 +0800
by
lemon
Browse Files
Options
Browse Files
Tag
Download
Email Patches
Plain Diff
下载授权书归档
1 parent
462a1cec
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
53 additions
and
38 deletions
app/Http/Controllers/Release/BaseController.php
app/Http/Controllers/Release/BaseController.php
View file @
4f52db9
...
...
@@ -13,6 +13,13 @@ use Illuminate\Support\Facades\Log;
class
BaseController
extends
Controller
{
/**
* @var string[]
*/
protected
$filterTmeBrandIdUri
=
[
'queryAuthResources'
];
/**
* 基础变量
* @var string
*/
...
...
@@ -54,24 +61,30 @@ class BaseController extends Controller
/**
* 重组请求数据,返回headers
* @return array
* @param array $params
* @return mixed
*/
private
function
parseHeaders
(
array
$params
)
{
if
(
!
$accessToken
=
Cache
::
get
(
CacheKeyTools
::
tmeAccessToken
()))
{
$accessToken
=
$this
->
getToken
();
}
$hea
ers
[
'appId'
]
=
$this
->
appId
;
$hea
ers
[
'accessToken'
]
=
$accessToken
;
$hea
ers
[
'timestamp'
]
=
(
string
)
date
(
'YmdHis'
);
$hea
ers
[
'traceId'
]
=
'hk_'
.
(
string
)
time
()
;
$hea
ers
[
'signMethod'
]
=
'md5'
;
$heaers
[
'sign'
]
=
$this
->
getSign
(
$heaers
,
$params
);
return
$heaers
;
if
(
!
$accessToken
=
Cache
::
get
(
CacheKeyTools
::
tmeAccessToken
()))
{
$accessToken
=
$this
->
getToken
();}
$headers
[
'appId'
]
=
$this
->
appId
;
$hea
ders
[
'accessToken'
]
=
$accessToken
;
$hea
ders
[
'timestamp'
]
=
(
string
)
date
(
'YmdHis'
)
;
$hea
ders
[
'traceId'
]
=
'hk_'
.
(
string
)
time
(
);
$hea
ders
[
'signMethod'
]
=
'md5'
;
$hea
ders
[
'sign'
]
=
$this
->
getSign
(
$headers
,
$params
)
;
return
$hea
d
ers
;
}
/**
* 请求接口
* @param string $uri
* @param array $reqData
* @param string $method
* @param bool $isLocal
* @return array
* @throws \GuzzleHttp\Exception\GuzzleException
*/
protected
function
doApi
(
string
$uri
,
array
$reqData
=
[],
string
$method
=
'POST'
,
bool
$isLocal
=
false
)
...
...
@@ -85,29 +98,18 @@ class BaseController extends Controller
}
else
{
$params
=
$reqData
;
}
if
(
!
$this
->
filterTmeBrandId
(
$uri
))
{
$params
[
'tmeBrandId'
]
=
$params
[
'tmeBrandId'
]
??
8888888
;
Log
::
channel
(
'api'
)
->
info
(
__METHOD__
,
[
'token'
=>
$token
,
'url'
=>
$url
,
'params'
=>
$params
]);
}
$headers
=
$this
->
parseHeaders
(
$params
);
switch
(
strtoupper
(
$method
))
{
case
'GET'
:
/*
$data = [
"businessId"=>194159,
"queryType"=>"album",
"brandId"=>7389
];
*/
//Log::channel('api')->info(__METHOD__.'get请求参数', ['token'=>$token, 'url'=>$url, 'data'=>$data]);
$response
=
$this
->
client
->
request
(
'GET'
,
$url
,
[
'query'
=>
[
"businessId"
=>
(
int
)
$params
[
"businessId"
],
"queryType"
=>
$params
[
"queryType"
],
"brandId"
=>
(
int
)
$params
[
"brandId"
]
],
'headers'
=>
$headers
]);
Log
::
channel
(
'api'
)
->
info
(
__METHOD__
,
[
'token'
=>
$token
,
'url'
=>
$url
,
'params'
=>
$params
]);
switch
(
strtoupper
(
$method
))
{
case
'GET'
:
$response
=
$this
->
client
->
request
(
'GET'
,
$url
,
[
'query'
=>
$params
,
'headers'
=>
$headers
]);
break
;
case
'POST'
:
default
:
...
...
@@ -117,33 +119,48 @@ class BaseController extends Controller
$respArr
=
json_decode
(
$response
->
getBody
()
->
getContents
(),
true
);
Log
::
channel
(
'api'
)
->
info
(
__METHOD__
,
[
'token'
=>
$token
,
'respArr'
=>
$respArr
]);
if
(
$respArr
[
'code'
]
==
'0'
){
return
[(
int
)
$respArr
[
'code'
],
$respArr
[
'message'
]
??
'操作失败'
,
$respArr
[
'data'
]
??
[]];
}
else
{
return
[(
int
)
$respArr
[
'code'
],
$respArr
[
'message'
]
??
'操作失败'
,[
$respArr
[
'traceId'
]]];
}
}
catch
(
\Exception
$e
)
{
Log
::
channel
(
'api'
)
->
error
(
__METHOD__
,
[
'token'
=>
$token
,
'msg'
=>
$e
->
getMessage
()]);
return
[
-
1
,
'接口请求失败'
,[]];
}
}
/**
* 过滤tmeBrandId字段
* @param $uri
* @return bool
*/
protected
function
filterTmeBrandId
(
$uri
)
:
bool
{
foreach
(
$this
->
filterTmeBrandIdUri
as
$item
)
{
if
(
strpos
(
$uri
,
$item
)
!==
false
)
{
return
true
;
}
}
return
false
;
}
/**
* 获取签名和去空的参数
* @param array $array
* @param $headers
* @param $params
* @return string
*/
protected
function
getSign
(
$hea
ers
,
$params
)
protected
function
getSign
(
$hea
ders
,
$params
)
{
$common_params
=
array_merge
(
$params
,
$heaers
);
unset
(
$common_params
[
'tmeBrandId'
]);
$common_params
=
array_merge
(
$params
,
$headers
);
//排序
ksort
(
$common_params
);
$params
=
''
;
//print_r($common_params);
foreach
(
$common_params
as
$k
=>
$v
)
{
if
(
''
===
$v
||
null
===
$v
||
[]
===
$v
)
{
...
...
@@ -156,8 +173,6 @@ class BaseController extends Controller
}
}
// Log::channel('api')->info($params);
return
strtoupper
(
md5
(
$this
->
appSecret
.
$params
.
$this
->
appSecret
));
}
...
...
Please
register
or
sign in
to post a comment