$result->httpResponseCode = 404;
$result->httpResponseHeaders = [];
$this->cacheSave($result, $cacheKey);
}
throw new ApiException(self::EXCEPTION_GENERIC_HTTP_ERROR . ' - ' . $e->getMessage(), $e->getCode());
}
}
return $this;
}
*
* @throws ApiException
*/
public function getStoryBySlug($slug)
{
return $this->getStory($slug);
}
/**
* Gets a story by it’s UUID.
*
}
if (Str::isUuid($slugOrUuid)) {
$storyblokClient = $storyblokClient->getStoryByUuid($slugOrUuid);
} else {
$storyblokClient = $storyblokClient->getStoryBySlug($slugOrUuid);
}
return $storyblokClient->getBody();
}
}
* @throws ApiException
*/
public function get($slugOrUuid): mixed
{
if (request()->has('_storyblok') || !config('storyblok.cache')) {
$response = $this->makeRequest($slugOrUuid);
} else {
$cache = Cache::getFacadeRoot();
if (Cache::getStore() instanceof \Illuminate\Cache\TaggableStore) {
$cache = $cache->tags('storyblok');
if ($language) {
$storyblokRequest->language($language, $fallbackLanguage);
}
$response = $storyblokRequest->get($slug);
$class = $this->getChildClassName('Page', $response['content']['component']);
return new $class($response);
}
if (! $instance) {
throw new RuntimeException('A facade root has not been set.');
}
return $instance->$method(...$args);
}
}
* @return \Illuminate\View\View
* @throws \Exception
*/
public function show($slug = 'home'): \Illuminate\View\View
{
return Storyblok::read($slug)->render();
}
/**
* Deletes the cached API responses
*/
if (method_exists($controller, 'callAction')) {
return $controller->callAction($method, $parameters);
}
return $controller->{$method}(...array_values($parameters));
}
/**
* Resolve the parameters for the controller.
*
* @throws \Symfony\Component\HttpKernel\Exception\NotFoundHttpException
*/
protected function runController()
{
return $this->controllerDispatcher()->dispatch(
$this, $this->getController(), $this->getControllerMethod()
);
}
/**
* Get the controller instance for the route.
{
$this->container = $this->container ?: new Container;
try {
if ($this->isControllerAction()) {
return $this->runController();
}
return $this->runCallable();
} catch (HttpResponseException $e) {
return $e->getResponse();
return (new Pipeline($this->container))
->send($request)
->through($middleware)
->then(fn ($request) => $this->prepareResponse(
$request, $route->run()
));
}
/**
* Gather the middleware for the given route with resolved class names.
*/
protected function prepareDestination(Closure $destination)
{
return function ($passable) use ($destination) {
try {
return $destination($passable);
} catch (Throwable $e) {
return $this->handleException($passable, $e);
}
};
}
}
throw $exception;
}
return $next($request);
}
}
// since the object we're given was already a fully instantiated object.
$parameters = [$passable, $stack];
}
$carry = method_exists($pipe, $this->method)
? $pipe->{$this->method}(...$parameters)
: $pipe(...$parameters);
return $this->handleCarry($carry);
} catch (Throwable $e) {
return $this->handleException($passable, $e);
$this->isReading($request) ||
$this->runningUnitTests() ||
$this->inExceptArray($request) ||
$this->tokensMatch($request)
) {
return tap($next($request), function ($response) use ($request) {
if ($this->shouldAddXsrfTokenCookie()) {
$this->addCookieToResponse($request, $response);
}
});
}
// since the object we're given was already a fully instantiated object.
$parameters = [$passable, $stack];
}
$carry = method_exists($pipe, $this->method)
? $pipe->{$this->method}(...$parameters)
: $pipe(...$parameters);
return $this->handleCarry($carry);
} catch (Throwable $e) {
return $this->handleException($passable, $e);
// Putting the errors in the view for every view allows the developer to just
// assume that some errors are always available, which is convenient since
// they don't have to continually run checks for the presence of errors.
return $next($request);
}
}
// since the object we're given was already a fully instantiated object.
$parameters = [$passable, $stack];
}
$carry = method_exists($pipe, $this->method)
? $pipe->{$this->method}(...$parameters)
: $pipe(...$parameters);
return $this->handleCarry($carry);
} catch (Throwable $e) {
return $this->handleException($passable, $e);
$this->startSession($request, $session)
);
$this->collectGarbage($session);
$response = $next($request);
$this->storeCurrentUrl($request, $session);
$this->addCookieToResponse($response, $session);
if ($this->manager->shouldBlock() ||
($request->route() instanceof Route && $request->route()->locksFor())) {
return $this->handleRequestWhileBlocking($request, $session, $next);
}
return $this->handleStatefulRequest($request, $session, $next);
}
/**
* Handle the given request within session state.
*
// since the object we're given was already a fully instantiated object.
$parameters = [$passable, $stack];
}
$carry = method_exists($pipe, $this->method)
? $pipe->{$this->method}(...$parameters)
: $pipe(...$parameters);
return $this->handleCarry($carry);
} catch (Throwable $e) {
return $this->handleException($passable, $e);
* @param \Closure $next
* @return mixed
*/
public function handle($request, Closure $next)
{
$response = $next($request);
foreach ($this->cookies->getQueuedCookies() as $cookie) {
$response->headers->setCookie($cookie);
}
// since the object we're given was already a fully instantiated object.
$parameters = [$passable, $stack];
}
$carry = method_exists($pipe, $this->method)
? $pipe->{$this->method}(...$parameters)
: $pipe(...$parameters);
return $this->handleCarry($carry);
} catch (Throwable $e) {
return $this->handleException($passable, $e);
* @param \Closure $next
* @return \Symfony\Component\HttpFoundation\Response
*/
public function handle($request, Closure $next)
{
return $this->encrypt($next($this->decrypt($request)));
}
/**
* Decrypt the cookies on the request.
*
// since the object we're given was already a fully instantiated object.
$parameters = [$passable, $stack];
}
$carry = method_exists($pipe, $this->method)
? $pipe->{$this->method}(...$parameters)
: $pipe(...$parameters);
return $this->handleCarry($carry);
} catch (Throwable $e) {
return $this->handleException($passable, $e);
{
$pipeline = array_reduce(
array_reverse($this->pipes()), $this->carry(), $this->prepareDestination($destination)
);
return $pipeline($this->passable);
}
/**
* Run the pipeline and return the result.
*
return (new Pipeline($this->container))
->send($request)
->through($middleware)
->then(fn ($request) => $this->prepareResponse(
$request, $route->run()
));
}
/**
* Gather the middleware for the given route with resolved class names.
*
$request->setRouteResolver(fn () => $route);
$this->events->dispatch(new RouteMatched($route, $request));
return $this->prepareResponse($request,
$this->runRouteWithinStack($route, $request)
);
}
/**
* Run the given route within a Stack "onion" instance.
* @param \Illuminate\Http\Request $request
* @return \Symfony\Component\HttpFoundation\Response
*/
public function dispatchToRoute(Request $request)
{
return $this->runRoute($request, $this->findRoute($request));
}
/**
* Find the route matching a given request.
*
*/
public function dispatch(Request $request)
{
$this->currentRequest = $request;
return $this->dispatchToRoute($request);
}
/**
* Dispatch the request to a route and return the response.
*
protected function dispatchToRouter()
{
return function ($request) {
$this->app->instance('request', $request);
return $this->router->dispatch($request);
};
}
/**
* Call the terminate method on any terminable middleware.
*/
protected function prepareDestination(Closure $destination)
{
return function ($passable) use ($destination) {
try {
return $destination($passable);
} catch (Throwable $e) {
return $this->handleException($passable, $e);
}
};
}
* @param \Closure $next
* @return mixed
*/
public function handle($request, Closure $next)
{
$response = $next($request);
if ($response instanceof Response && Livewire::shouldDisableBackButtonCache()){
$response->headers->add([
"Pragma" => "no-cache",
"Expires" => "Fri, 01 Jan 1990 00:00:00 GMT",
// since the object we're given was already a fully instantiated object.
$parameters = [$passable, $stack];
}
$carry = method_exists($pipe, $this->method)
? $pipe->{$this->method}(...$parameters)
: $pipe(...$parameters);
return $this->handleCarry($carry);
} catch (Throwable $e) {
return $this->handleException($passable, $e);
{
if ($this->isNovaRequest($request)) {
NovaServiceProviderRegistered::dispatch();
}
return $next($request);
}
/**
* Determine if the given request is intended for Nova.
*
// since the object we're given was already a fully instantiated object.
$parameters = [$passable, $stack];
}
$carry = method_exists($pipe, $this->method)
? $pipe->{$this->method}(...$parameters)
: $pipe(...$parameters);
return $this->handleCarry($carry);
} catch (Throwable $e) {
return $this->handleException($passable, $e);
*/
public function handle($request, Closure $next)
{
$this->clean($request);
return $next($request);
}
/**
* Clean the request's data.
*
if ($callback($request)) {
return $next($request);
}
}
return parent::handle($request, $next);
}
/**
* Transform the given value.
*
// since the object we're given was already a fully instantiated object.
$parameters = [$passable, $stack];
}
$carry = method_exists($pipe, $this->method)
? $pipe->{$this->method}(...$parameters)
: $pipe(...$parameters);
return $this->handleCarry($carry);
} catch (Throwable $e) {
return $this->handleException($passable, $e);
*/
public function handle($request, Closure $next)
{
$this->clean($request);
return $next($request);
}
/**
* Clean the request's data.
*
if ($callback($request)) {
return $next($request);
}
}
return parent::handle($request, $next);
}
/**
* Transform the given value.
*
// since the object we're given was already a fully instantiated object.
$parameters = [$passable, $stack];
}
$carry = method_exists($pipe, $this->method)
? $pipe->{$this->method}(...$parameters)
: $pipe(...$parameters);
return $this->handleCarry($carry);
} catch (Throwable $e) {
return $this->handleException($passable, $e);
if ($max > 0 && $request->server('CONTENT_LENGTH') > $max) {
throw new PostTooLargeException;
}
return $next($request);
}
/**
* Determine the server 'post_max_size' as bytes.
*
// since the object we're given was already a fully instantiated object.
$parameters = [$passable, $stack];
}
$carry = method_exists($pipe, $this->method)
? $pipe->{$this->method}(...$parameters)
: $pipe(...$parameters);
return $this->handleCarry($carry);
} catch (Throwable $e) {
return $this->handleException($passable, $e);
null,
$this->getHeaders($data)
);
}
return $next($request);
}
/**
* Determine if the incoming request has a maintenance mode bypass cookie.
*
// since the object we're given was already a fully instantiated object.
$parameters = [$passable, $stack];
}
$carry = method_exists($pipe, $this->method)
? $pipe->{$this->method}(...$parameters)
: $pipe(...$parameters);
return $this->handleCarry($carry);
} catch (Throwable $e) {
return $this->handleException($passable, $e);
* @return \Illuminate\Http\Response
*/
public function handle($request, Closure $next)
{
if (! $this->hasMatchingPath($request)) {
return $next($request);
}
$this->cors->setOptions($this->container['config']->get('cors', []));
if ($this->cors->isPreflightRequest($request)) {
// since the object we're given was already a fully instantiated object.
$parameters = [$passable, $stack];
}
$carry = method_exists($pipe, $this->method)
? $pipe->{$this->method}(...$parameters)
: $pipe(...$parameters);
return $this->handleCarry($carry);
} catch (Throwable $e) {
return $this->handleException($passable, $e);
{
$request::setTrustedProxies([], $this->getTrustedHeaderNames());
$this->setTrustedProxyIpAddresses($request);
return $next($request);
}
/**
* Sets the trusted proxies on the request.
*
// since the object we're given was already a fully instantiated object.
$parameters = [$passable, $stack];
}
$carry = method_exists($pipe, $this->method)
? $pipe->{$this->method}(...$parameters)
: $pipe(...$parameters);
return $this->handleCarry($carry);
} catch (Throwable $e) {
return $this->handleException($passable, $e);
{
$pipeline = array_reduce(
array_reverse($this->pipes()), $this->carry(), $this->prepareDestination($destination)
);
return $pipeline($this->passable);
}
/**
* Run the pipeline and return the result.
*
$this->bootstrap();
return (new Pipeline($this->app))
->send($request)
->through($this->app->shouldSkipMiddleware() ? [] : $this->middleware)
->then($this->dispatchToRouter());
}
/**
* Bootstrap the application for HTTP requests.
*
$this->requestStartedAt = Carbon::now();
try {
$request->enableHttpMethodParameterOverride();
$response = $this->sendRequestThroughRouter($request);
} catch (Throwable $e) {
$this->reportException($e);
$response = $this->renderException($request, $e);
}
$app = require_once __DIR__.'/../bootstrap/app.php';
$kernel = $app->make(Kernel::class);
$response = $kernel->handle(
$request = Request::capture()
)->send();
$kernel->terminate($request, $response);
ApiException
|
---|
Storyblok\ApiException: An HTTP Error has occurred! - An HTTP Error has occurred! - Client error: `GET https://api.storyblok.com/v2/cdn/stories/wp-content/uploads/2018/04/DB4.jpeg?token=rAVrUmAqQPLQI12IJbrSiAtt&version=draft&language=default&fallback_lang=default` resulted in a `404 Not Found` response: ["This record could not be found"] at /home/forge/www.bodyworks.com.bh/vendor/storyblok/php-client/src/Storyblok/Client.php:869 at Storyblok\Client->getStory() (/home/forge/www.bodyworks.com.bh/vendor/storyblok/php-client/src/Storyblok/Client.php:363) at Storyblok\Client->getStoryBySlug() (/home/forge/www.bodyworks.com.bh/vendor/riclep/laravel-storyblok/src/RequestStory.php:110) at Riclep\Storyblok\RequestStory->makeRequest() (/home/forge/www.bodyworks.com.bh/vendor/riclep/laravel-storyblok/src/RequestStory.php:42) at Riclep\Storyblok\RequestStory->get() (/home/forge/www.bodyworks.com.bh/vendor/riclep/laravel-storyblok/src/Storyblok.php:37) at Riclep\Storyblok\Storyblok->read() (/home/forge/www.bodyworks.com.bh/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php:338) at Illuminate\Support\Facades\Facade::__callStatic() (/home/forge/www.bodyworks.com.bh/vendor/riclep/laravel-storyblok/src/Http/Controllers/StoryblokController.php:19) at Riclep\Storyblok\Http\Controllers\StoryblokController->show() (/home/forge/www.bodyworks.com.bh/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:46) at Illuminate\Routing\ControllerDispatcher->dispatch() (/home/forge/www.bodyworks.com.bh/vendor/laravel/framework/src/Illuminate/Routing/Route.php:260) at Illuminate\Routing\Route->runController() (/home/forge/www.bodyworks.com.bh/vendor/laravel/framework/src/Illuminate/Routing/Route.php:205) at Illuminate\Routing\Route->run() (/home/forge/www.bodyworks.com.bh/vendor/laravel/framework/src/Illuminate/Routing/Router.php:798) at Illuminate\Routing\Router->Illuminate\Routing\{closure}() (/home/forge/www.bodyworks.com.bh/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:141) at Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}() (/home/forge/www.bodyworks.com.bh/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php:50) at Illuminate\Routing\Middleware\SubstituteBindings->handle() (/home/forge/www.bodyworks.com.bh/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:180) at Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}() (/home/forge/www.bodyworks.com.bh/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php:78) at Illuminate\Foundation\Http\Middleware\VerifyCsrfToken->handle() (/home/forge/www.bodyworks.com.bh/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:180) at Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}() (/home/forge/www.bodyworks.com.bh/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php:49) at Illuminate\View\Middleware\ShareErrorsFromSession->handle() (/home/forge/www.bodyworks.com.bh/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:180) at Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}() (/home/forge/www.bodyworks.com.bh/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php:121) at Illuminate\Session\Middleware\StartSession->handleStatefulRequest() (/home/forge/www.bodyworks.com.bh/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php:64) at Illuminate\Session\Middleware\StartSession->handle() (/home/forge/www.bodyworks.com.bh/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:180) at Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}() (/home/forge/www.bodyworks.com.bh/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php:37) at Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse->handle() (/home/forge/www.bodyworks.com.bh/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:180) at Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}() (/home/forge/www.bodyworks.com.bh/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php:67) at Illuminate\Cookie\Middleware\EncryptCookies->handle() (/home/forge/www.bodyworks.com.bh/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:180) at Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}() (/home/forge/www.bodyworks.com.bh/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:116) at Illuminate\Pipeline\Pipeline->then() (/home/forge/www.bodyworks.com.bh/vendor/laravel/framework/src/Illuminate/Routing/Router.php:799) at Illuminate\Routing\Router->runRouteWithinStack() (/home/forge/www.bodyworks.com.bh/vendor/laravel/framework/src/Illuminate/Routing/Router.php:776) at Illuminate\Routing\Router->runRoute() (/home/forge/www.bodyworks.com.bh/vendor/laravel/framework/src/Illuminate/Routing/Router.php:740) at Illuminate\Routing\Router->dispatchToRoute() (/home/forge/www.bodyworks.com.bh/vendor/laravel/framework/src/Illuminate/Routing/Router.php:729) at Illuminate\Routing\Router->dispatch() (/home/forge/www.bodyworks.com.bh/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:190) at Illuminate\Foundation\Http\Kernel->Illuminate\Foundation\Http\{closure}() (/home/forge/www.bodyworks.com.bh/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:141) at Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}() (/home/forge/www.bodyworks.com.bh/vendor/livewire/livewire/src/DisableBrowserCache.php:19) at Livewire\DisableBrowserCache->handle() (/home/forge/www.bodyworks.com.bh/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:180) at Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}() (/home/forge/www.bodyworks.com.bh/vendor/laravel/nova/src/Http/Middleware/ServeNova.php:24) at Laravel\Nova\Http\Middleware\ServeNova->handle() (/home/forge/www.bodyworks.com.bh/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:180) at Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}() (/home/forge/www.bodyworks.com.bh/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php:21) at Illuminate\Foundation\Http\Middleware\TransformsRequest->handle() (/home/forge/www.bodyworks.com.bh/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php:31) at Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull->handle() (/home/forge/www.bodyworks.com.bh/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:180) at Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}() (/home/forge/www.bodyworks.com.bh/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php:21) at Illuminate\Foundation\Http\Middleware\TransformsRequest->handle() (/home/forge/www.bodyworks.com.bh/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php:40) at Illuminate\Foundation\Http\Middleware\TrimStrings->handle() (/home/forge/www.bodyworks.com.bh/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:180) at Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}() (/home/forge/www.bodyworks.com.bh/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php:27) at Illuminate\Foundation\Http\Middleware\ValidatePostSize->handle() (/home/forge/www.bodyworks.com.bh/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:180) at Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}() (/home/forge/www.bodyworks.com.bh/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php:86) at Illuminate\Foundation\Http\Middleware\PreventRequestsDuringMaintenance->handle() (/home/forge/www.bodyworks.com.bh/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:180) at Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}() (/home/forge/www.bodyworks.com.bh/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php:49) at Illuminate\Http\Middleware\HandleCors->handle() (/home/forge/www.bodyworks.com.bh/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:180) at Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}() (/home/forge/www.bodyworks.com.bh/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php:39) at Illuminate\Http\Middleware\TrustProxies->handle() (/home/forge/www.bodyworks.com.bh/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:180) at Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}() (/home/forge/www.bodyworks.com.bh/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:116) at Illuminate\Pipeline\Pipeline->then() (/home/forge/www.bodyworks.com.bh/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:165) at Illuminate\Foundation\Http\Kernel->sendRequestThroughRouter() (/home/forge/www.bodyworks.com.bh/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:134) at Illuminate\Foundation\Http\Kernel->handle() (/home/forge/www.bodyworks.com.bh/public/index.php:52) |