当前位置: 首页>>代码示例>>PHP>>正文


PHP AccessManagerInterface::checkRequest方法代码示例

本文整理汇总了PHP中Drupal\Core\Access\AccessManagerInterface::checkRequest方法的典型用法代码示例。如果您正苦于以下问题:PHP AccessManagerInterface::checkRequest方法的具体用法?PHP AccessManagerInterface::checkRequest怎么用?PHP AccessManagerInterface::checkRequest使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Drupal\Core\Access\AccessManagerInterface的用法示例。


在下文中一共展示了AccessManagerInterface::checkRequest方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: checkAccess

 /**
  * Apply access check service to the route and parameters in the request.
  *
  * @param \Symfony\Component\HttpFoundation\Request $request
  *   The request to access check.
  */
 protected function checkAccess(Request $request)
 {
     // The cacheability (if any) of this request's access check result must be
     // applied to the response.
     $access_result = $this->accessManager->checkRequest($request, $this->account, TRUE);
     // Allow a master request to set the access result for a subrequest: if an
     // access result attribute is already set, don't overwrite it.
     if (!$request->attributes->has(AccessAwareRouterInterface::ACCESS_RESULT)) {
         $request->attributes->set(AccessAwareRouterInterface::ACCESS_RESULT, $access_result);
     }
     if (!$access_result->isAllowed()) {
         throw new AccessDeniedHttpException($access_result instanceof AccessResultReasonInterface ? $access_result->getReason() : NULL);
     }
 }
开发者ID:eigentor,项目名称:tommiblog,代码行数:20,代码来源:AccessAwareRouter.php

示例2: build

 /**
  * {@inheritdoc}
  */
 public function build(RouteMatchInterface $route_match)
 {
     $links = array();
     // General path-based breadcrumbs. Use the actual request path, prior to
     // resolving path aliases, so the breadcrumb can be defined by simply
     // creating a hierarchy of path aliases.
     $path = trim($this->context->getPathInfo(), '/');
     $path_elements = explode('/', $path);
     $exclude = array();
     // Don't show a link to the front-page path.
     $front = $this->config->get('page.front');
     $exclude[$front] = TRUE;
     // /user is just a redirect, so skip it.
     // @todo Find a better way to deal with /user.
     $exclude['user'] = TRUE;
     while (count($path_elements) > 1) {
         array_pop($path_elements);
         // Copy the path elements for up-casting.
         $route_request = $this->getRequestForPath(implode('/', $path_elements), $exclude);
         if ($route_request) {
             $access = $this->accessManager->checkRequest($route_request, $this->currentUser);
             if ($access) {
                 $title = $this->titleResolver->getTitle($route_request, $route_request->attributes->get(RouteObjectInterface::ROUTE_OBJECT));
             }
             if ($access) {
                 if (!isset($title)) {
                     // Fallback to using the raw path component as the title if the
                     // route is missing a _title or _title_callback attribute.
                     $title = str_replace(array('-', '_'), ' ', Unicode::ucfirst(end($path_elements)));
                 }
                 $links[] = Link::createFromRoute($title, $route_request->attributes->get(RouteObjectInterface::ROUTE_NAME), $route_request->attributes->get('_raw_variables')->all());
             }
         }
     }
     if ($path && $path != $front) {
         // Add the Home link, except for the front page.
         $links[] = Link::createFromRoute($this->t('Home'), '<front>');
     }
     return array_reverse($links);
 }
开发者ID:davidsoloman,项目名称:drupalconsole.com,代码行数:43,代码来源:PathBasedBreadcrumbBuilder.php

示例3: checkAccess

 /**
  * Apply access check service to the route and parameters in the request.
  *
  * @param \Symfony\Component\HttpFoundation\Request $request
  *   The request to access check.
  */
 protected function checkAccess(Request $request)
 {
     if (!$this->accessManager->checkRequest($request, $this->account)) {
         throw new AccessDeniedHttpException();
     }
 }
开发者ID:davidsoloman,项目名称:drupalconsole.com,代码行数:12,代码来源:AccessAwareRouter.php


注:本文中的Drupal\Core\Access\AccessManagerInterface::checkRequest方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。