GraphQL\GraphQL::executeAndReturnResult PHP Метод

executeAndReturnResult() публичный статический Метод

public static executeAndReturnResult ( Schema $schema, $requestString, null $rootValue = null, $contextValue = null, null $variableValues = null, null $operationName = null ) : ExecutionResult | GraphQL\Executor\Promise\Promise
$schema Schema
$requestString
$rootValue null
$variableValues null
$operationName null
Результат GraphQL\Executor\ExecutionResult | GraphQL\Executor\Promise\Promise
    public static function executeAndReturnResult(Schema $schema, $requestString, $rootValue = null, $contextValue = null, $variableValues = null, $operationName = null)
    {
        try {
            if ($requestString instanceof DocumentNode) {
                $documentNode = $requestString;
            } else {
                $source = new Source($requestString ?: '', 'GraphQL request');
                $documentNode = Parser::parse($source);
            }
            /** @var QueryComplexity $queryComplexity */
            $queryComplexity = DocumentValidator::getRule('QueryComplexity');
            $queryComplexity->setRawVariableValues($variableValues);
            $validationErrors = DocumentValidator::validate($schema, $documentNode);
            if (!empty($validationErrors)) {
                return new ExecutionResult(null, $validationErrors);
            } else {
                return Executor::execute($schema, $documentNode, $rootValue, $contextValue, $variableValues, $operationName);
            }
        } catch (Error $e) {
            return new ExecutionResult(null, [$e]);
        }
    }

Usage Example

Пример #1
0
 public function queryAndReturnResult($query, $params = [])
 {
     $schema = $this->schema();
     $result = GraphQLBase::executeAndReturnResult($schema, $query, null, $params);
     return $result;
 }
All Usage Examples Of GraphQL\GraphQL::executeAndReturnResult