add clear

This commit is contained in:
as2252258@163.com
2020-01-10 19:41:58 +08:00
parent 7c9981c63d
commit cdd881d694
+32 -27
View File
@@ -353,7 +353,7 @@ class HttpClient
$body = $this->resolve($header, $body); $body = $this->resolve($header, $body);
if ($client->getStatusCode() != 200) { if ($client->getStatusCode() != 200) {
return new Result(['code' => $client->getStatusCode(), 'message' => $body]); return new Result(['code' => $client->getStatusCode(), 'message' => $this->searchMessageByData($body), 'data' => $body]);
} }
return $this->structure($body, $data, $header); return $this->structure($body, $data, $header);
@@ -579,32 +579,7 @@ class HttpClient
$result['message'] = ''; $result['message'] = '';
} else { } else {
$result['code'] = $body[$this->errorCodeField] ?? 0; $result['code'] = $body[$this->errorCodeField] ?? 0;
var_dump(strpos($this->errorMsgField, '.')); $result['message'] = $this->searchMessageByData($body);
if (strpos($this->errorMsgField, '.') !== false) {
$parent = [];
$explode = explode('.', $this->errorMsgField);
foreach ($explode as $item) {
if (empty($item)) {
continue;
}
if (empty($parent)) {
$parent = $body[$item];
continue;
}
if (is_string($parent)) {
break;
}
if (!isset($parent[$item])) {
break;
}
}
var_dump($parent);
$result['message'] = $parent ?? 'system success.';
} else {
$result['message'] = $body[$this->errorMsgField] ?? 'system success.';
}
} }
$result['data'] = $body; $result['data'] = $body;
$result['header'] = $header; $result['header'] = $header;
@@ -612,6 +587,36 @@ class HttpClient
return new Result($result); return new Result($result);
} }
/**
* @param $body
* @return array|mixed|string
*/
private function searchMessageByData($body)
{
$parent = [];
if (empty($this->errorMsgField)) {
return 'system success.';
}
$explode = explode('.', $this->errorMsgField);
foreach ($explode as $item) {
if (empty($item)) {
continue;
}
if (empty($parent)) {
$parent = $body[$item];
continue;
}
if (is_string($parent)) {
break;
}
if (!isset($parent[$item])) {
break;
}
}
return !empty($parent) ? $parent : 'system success.';
}
/** /**
* @return bool * @return bool
* check isPost Request * check isPost Request