增加输出日志
This commit is contained in:
@@ -186,7 +186,7 @@ class RsaSigner implements Signer
|
||||
public function checkSignature(YopHttpResponse $httpResponse, $signature, $publicKey, SignOptions $options)
|
||||
{
|
||||
$content = $httpResponse->readContent();
|
||||
\Log::channel('yeepay')->info($content);
|
||||
\Log::channel('yeepay')->error('返回的内容:', json_decode($content, true));
|
||||
|
||||
$content = str_replace([" ", "\n", "\t"], "", $content);
|
||||
if (openssl_verify($content, base64_decode($signature), $publicKey, $options->getDigestAlg()) == 1) {
|
||||
|
||||
@@ -60,7 +60,7 @@ class ClientHandler
|
||||
{
|
||||
$executionContext = $this->getExecutionContext($executionParams);
|
||||
$request = $executionParams->getRequestMarshaller()->marshal($executionParams->getRequest());
|
||||
\Log::channel('yeepay')->info(json_encode($request->getParameters()));
|
||||
\Log::channel('yeepay')->error('提交的参数:', $request->getParameters());
|
||||
|
||||
/** @var ExecutionContext $httpExecutionContext */
|
||||
$httpExecutionContext = $executionContext[0];
|
||||
@@ -69,7 +69,6 @@ class ClientHandler
|
||||
$yopHttpResponse = $this->yopHttpClient->execute($request, $httpExecutionContext);
|
||||
/** @var ResponseUnMarshalParams $ResponseUnMarshalParams */
|
||||
$ResponseUnMarshalParams = $executionContext[1];
|
||||
|
||||
return $executionParams->getResponseUnMarshaller()->unmarshal($yopHttpResponse, $ResponseUnMarshalParams);
|
||||
}
|
||||
|
||||
|
||||
@@ -34,18 +34,18 @@ class YopHttpClient
|
||||
|
||||
/**
|
||||
* YopHttpClient constructor.
|
||||
*
|
||||
* @param ClientConfiguration $clientConfiguration
|
||||
*/
|
||||
public function __construct(ClientConfiguration $clientConfiguration)
|
||||
{
|
||||
|
||||
$this->logger = LogFactory::getLogger(get_class($this));
|
||||
$this->clientConfiguration = $clientConfiguration;
|
||||
$guzzleClientConfig = [
|
||||
RequestOptions::CONNECT_TIMEOUT => $clientConfiguration->getConnectionTimeoutInMillis() / 1000,
|
||||
RequestOptions::TIMEOUT, $clientConfiguration->getSocketTimeoutInMillis() / 1000,
|
||||
];
|
||||
if (!empty($clientConfiguration->getProxyUrl())) {
|
||||
if (! empty($clientConfiguration->getProxyUrl())) {
|
||||
$guzzleClientConfig[RequestOptions::PROXY] = $clientConfiguration->getProxyUrl();
|
||||
}
|
||||
$this->guzzleClient = new Client($guzzleClientConfig);
|
||||
@@ -66,8 +66,10 @@ class YopHttpClient
|
||||
$executionContext->getEncryptor()->encrypt($request);
|
||||
}
|
||||
$executionContext->getSigner()
|
||||
->sign($request, $executionContext->getCredentials(), $executionContext->getSignOptions());
|
||||
->sign($request, $executionContext->getCredentials(), $executionContext->getSignOptions());
|
||||
try {
|
||||
\Log::channel('yeepay')->error('头部信息', $request->getHeaders());
|
||||
|
||||
$guzzleResponse = $this->sendRequest($request);
|
||||
} catch (ServerException $e) {
|
||||
$guzzleResponse = $e->getResponse();
|
||||
@@ -87,12 +89,12 @@ class YopHttpClient
|
||||
private function sendRequest(Request $request)
|
||||
{
|
||||
$uri = $request->getEndpoint().HttpUtils::urlEncodeExceptSlash($request->getResourcePath());
|
||||
if (!empty($request->getMultipartFiles())) {
|
||||
if (! empty($request->getMultipartFiles())) {
|
||||
if ($request->getHttpMethod() == HttpMethod::POST) {
|
||||
$body = [];
|
||||
if (!empty($request->getParameters())) {
|
||||
if (! empty($request->getParameters())) {
|
||||
foreach ($request->getParameters() as $k => $v) {
|
||||
if (!empty($v)) {
|
||||
if (! empty($v)) {
|
||||
foreach ($v as $value) {
|
||||
$body[] = ['name' => $k, 'contents' => $value];
|
||||
}
|
||||
@@ -101,7 +103,7 @@ class YopHttpClient
|
||||
}
|
||||
foreach ($request->getMultipartFiles() as $k => $v) {
|
||||
$part = ['name' => $k];
|
||||
if (!empty($v)) {
|
||||
if (! empty($v)) {
|
||||
foreach ($v as $value) {
|
||||
/** @var MultiPartFile $value */
|
||||
$part['contents'] = $value->getContent();
|
||||
@@ -121,11 +123,11 @@ class YopHttpClient
|
||||
}
|
||||
}
|
||||
$requestIsPostOrPut = $request->getHttpMethod() == HttpMethod::POST || $request->getHttpMethod() == HttpMethod::PUT;
|
||||
$requestHasPayload = !empty($request->getContent());
|
||||
$putParamsInUri = !$requestIsPostOrPut || $requestHasPayload;
|
||||
$requestHasPayload = ! empty($request->getContent());
|
||||
$putParamsInUri = ! $requestIsPostOrPut || $requestHasPayload;
|
||||
if ($putParamsInUri) {
|
||||
$encodedParameters = \GuzzleHttp\Psr7\Query::build(HttpUtils::encodedParameters($request->getParameters()));
|
||||
if (!empty($encodedParameters)) {
|
||||
if (! empty($encodedParameters)) {
|
||||
$uri = $uri.'?'.$encodedParameters;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -51,6 +51,7 @@ abstract class BaseResponseUnMarshaller implements ResponseUnMarshaller
|
||||
{
|
||||
$responseMetadata->setYopRequestId($yopHttpResponse->getHeader(Headers::YOP_REQUEST_ID));
|
||||
$responseMetadata->setYopContentSha256($yopHttpResponse->getHeader(Headers::YOP_CONTENT_SHA256));
|
||||
#todo 关闭验签
|
||||
// $responseMetadata->setYopSign($yopHttpResponse->getHeader(Headers::YOP_SIGN));
|
||||
$responseMetadata->setYopVia($yopHttpResponse->getHeader(Headers::YOP_VIA));
|
||||
$responseMetadata->setContentDisposition($yopHttpResponse->getHeader(Headers::CONTENT_DISPOSITION));
|
||||
@@ -126,7 +127,8 @@ abstract class BaseResponseUnMarshaller implements ResponseUnMarshaller
|
||||
if (! empty($content)) {
|
||||
try {
|
||||
$data = json_decode($content, true);
|
||||
dd($data);
|
||||
\Log::channel('yeepay')->info('返回的错误信息', $data);
|
||||
|
||||
$yopServiceException = new YopServiceException($data['message'], $data['code']);
|
||||
$yopServiceException->setRequestId($data['requestId']);
|
||||
$yopServiceException->setSubErrorCode($data['subCode']);
|
||||
|
||||
Reference in New Issue
Block a user