feat: return response as assoc array

This commit is contained in:
Victor Westerlund 2023-06-01 11:17:46 +02:00
parent a2587624e5
commit 4054502b4a

View file

@ -112,19 +112,22 @@
return $rx; return $rx;
} }
// Create HTTP-like JSON with ["<endpoint>","<method>","[payload]"] and return // Call a Reflect endpoint and return response as assoc array
// respone from endpoint as ["<http_status_code", "<json_encoded_response_body>"]
public function call(string $endpoint, Method|string $method = (__CLASS__)::HTTP_DEFAULT_METHOD, array $payload = null): array { public function call(string $endpoint, Method|string $method = (__CLASS__)::HTTP_DEFAULT_METHOD, array $payload = null): array {
// Resolve string to enum // Resolve string to enum
$method = $this::resolve_method($method); $method = $this::resolve_method($method);
// Call endpoint over UNIX socket // Call endpoint over UNIX socket
if ($this->_con === Connection::AF_UNIX) { if ($this->_con === Connection::AF_UNIX) {
return json_decode($this->socket_txn(json_encode([ // Return response as assoc array
$endpoint, return json_decode($this->socket_txn(
$method->value, // Send request as stringified JSON
$payload json_encode([
]))); $endpoint,
$method->value,
$payload
])
), true);
} }
// Call endpoint over HTTP // Call endpoint over HTTP