问题标签 [symfony-4.3]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
767 浏览

symfony - Symfony 4.3 路由问题 - 每条路由都与 urlRedirectAction 匹配

我正在将 Symfony 从 3.4 升级到 4.3,我遇到的情况是每条路由都与控制器和方法正确匹配,但随后请求到达RedirectableCompiledUrlMatcher并将正确的参数替换为 _controller: Symfony\Bundle\FrameworkBundle\Controller\RedirectController::urlRedirectAction

这会触发各种其他事情,例如调用参数转换器、访问防火墙和其他与路由相关的事情,因为匹配的路由不正确,所以不应该这样做。

在不替换正确参数的情况下继续调试 3.4 项目。

我的问题是这现在是否是正确的请求流(即每条路由都必须通过 urlRedirectAction)并且我需要配置其他东西,或者有什么方法可以避免调用,我猜,RedirectableCompiledUrlMatcher

是否有可能发生这种情况,因为RedirectableUrlMatcher它是默认匹配器\Symfony\Component\Routing\Router,为什么它是默认匹配器?有没有机会用UrlMatcher3.4 中的普通替换它?

正是这一行vendor/symfony/routing/Matcher/Dumper/CompiledUrlMatcherTrait.php:63,我$ret正确匹配了我的控制器$this->redirect()并被调用,它用 Symfony RedirectController 替换了我的控制器。特质是RedirectableCompiledUrlMatcher类的一部分

0 投票
1 回答
703 浏览

jwt - 如何使用 symfony 4 和 angular 6/7/8 实现 sso

My Backend 是一个使用 symfony 4.3、lexikJWTBundle 和 FOSUserBundle 实现的 API REST。它工作正常并返回一个令牌。

我的前端使用 angular 8 并且我的身份验证工具在我的后端也可以正常工作并且我已登录。

在此处输入图像描述 我现在的问题:当我连接时,我有 3 个链接到另一个 3 个应用程序,当我单击并重定向到其中一个时,我想要也被记录。

我的问题: 如何在我的情况下实施 SSO?

0 投票
1 回答
414 浏览

php - Symfony PHPUnit 测试问题

在 Symfony 中运行 PHPUnit 测试用例时遇到以下问题。我尝试删除各种可能导致内存问题但没有运气的测试用例。是否与 PHP 版本(即 7.2.20)相关?

$ phpdbg -qrr ./bin/phpunit --coverage-text --colors=never --coverage-html $CI_PROJECT_DIR/codecoverage/ --coverage-clover $CI_PROJECT_DIR/clover.xml --log-junit $CI_PROJECT_DIR/junit. xml -c 。Sebastian Bergmann 和贡献者的 PHPUnit 7.5.12。

测试项目测试套件 F.......FF.FF。[PHP警告:未捕获的错误异常:包括(/builds/development/project/project-docs/var/cache/test/pools/yZJnsPMs0T/S/6/+yyw-9cjArnMASkmxItg):无法打开流:没有这样的文件或目录在 /builds/development/project/project-docs/vendor/symfony/cache/Traits/PhpFilesTrait.php:114 堆栈跟踪:

#0 /builds/development/project/project-docs/vendor/symfony/cache/Traits/PhpFilesTrait.php(114): Symfony\Component\Cache\Adapter\PhpFilesAdapter::Symfony\Component\Cache\Adapter{closure}( 2, 'include(/builds...', '/builds/develop...', 114, 数组)

#1 /builds/development/project/project-docs/vendor/symfony/cache/Traits/PhpFilesTrait.php(114): include()

#2 /builds/development/project/project-docs/vendor/symfony/cache/Traits/AbstractAdapterTrait.php(51): Symfony\Component\Cache\Adapter\PhpFilesAdapter->doFetch(Array)

#3 /builds/development/project/project-docs/vendor/symfony/cache/Adapter/TraceableAdapter.php(77): Symfony\Component\Cache\Adapter\AbstractAdapte 在 /builds/development/project/project-docs/vendor /symfony/cache/Traits/PhpFilesTrait.php 第 114 行] [PHP 致命错误:/builds/development/project/project-docs/vendor/symfony/cache 中的内存不足(分配 702808064)(试图分配 140362191340481 字节) /Traits/PhpFilesTrait.php 第 114 行]

我也试过composer update

0 投票
0 回答
67 浏览

php - PHPUnit 测试中 Container 的 Symfony 内存问题

我有以下测试。这导致PHP Fatal error: Out of memory (allocated 704905216) (tried to allocate 139802474386369 bytes)错误

这里$this->client->getContainer()似乎导致了这个问题。但我不知道如何写其他方式。如何解决这个内存问题?

0 投票
1 回答
916 浏览

symfony-4.3 - 连接到 symfony 4.3 项目中的 oracle 11g 数据库

我开始了一个 Symfony 4.3 项目,我必须为这个项目使用 Oracle 11g 数据库。但是,Symfony 的文档并没有提供足够清晰的主题,尤其是连接到 oracle 数据库的配置。我试图解决这个问题已经快 3 天了,但我什么也没找到。

错误是:

驱动程序中发生异常:SQLSTATE[HY000]: pdo_oci_handle_factory: ORA-12505: TNS:listener 目前不知道连接描述符中给出的 SID
(ext\pdo_oci\oci_driver.c:634)

0 投票
0 回答
495 浏览

php-7.2 - 如何在 symfony 4 中自动调用控制器函数

我正在尝试自动执行一项任务。这是每周自动向某些人发送电子邮件。我创建了一个 MailController,在它内部实现了一个发送电子邮件的功能。我现在要做的是让我的应用程序每周或每月自动调用该功能。

我尝试的是实现一个新命令,该命令将执行我的函数,然后制作一个脚本来重复该命令。

执行我创建的命令时,我收到以下消息:

我正在运行 symfony 4.3.2,我试图调用的控制器扩展了 AbstractController,我的 services.yaml 是默认的。我想我错过了一些配置,但我无法找出确切的配置。感谢您的帮助,如果您需要更多信息,请告诉我。

0 投票
1 回答
2238 浏览

symfony - Symfony Messenger 4.3 - 从理论传输中消费消息失败(抛出异常)

Symfony 版本:4.3.2

PHP:7.2.20

我正在尝试将信使组件与学说传输异步使用。我在composer require messengerSymfony Flex 的帮助下安装了 Messenger。

我已经MESSENGER_TRANSPORT_DSN=doctrine://default.env.local. 在 messenger 配置中,传输也被配置:

在控制器中发送消息时,$this->dispatchMessage(new SomeNotification('some content'));一切都很好。教义传输表messenger_messages自动创建,消息正确保存在表中。

当尝试使用消息时,./bin/console messenger:consume async我收到以下错误:

所以里面的 $routeableBusSymfony\Component\Messenger\Command\ConsumeMessagesCommand是空的,这会导致在实例化 Worker 时崩溃。

0 投票
0 回答
278 浏览

php - Composer 无法从供应商目录中的存储库中找到类

我无法解决在我的 symfony 应用程序中加载类的问题。应用程序的核心位于单独的 gitlab 存储库中,在 composer 中作为依赖项加载。

该软件包位于:

  • ProjectRoot/供应商/官员/*

composer.json这个包位于:

  • ProjectRoot/vendor/officer/officer-domain/composer.json

composer.json内容:

尝试EventDispatcherInterface从命名空间加载时Officer\Infrastructure\EventDispatcher

尝试从命名空间“Officer\Infrastructure\EventDispatcher”加载接口“EventDispatcherInterface”。
您是否忘记了“Symfony\Contracts\EventDispatcher\EventDispatcherInterface”或“Symfony\Component\EventDispatcher\EventDispatcherInterface”的“使用”语句?

EventDispatcherInterface位于:

  • ProjectRoot/vendor/officer/officer-domain/src/Infrastructure/EventDispatcher/EventDispatcherInterface.php

两天来,我没有在目录结构中看到任何拼写错误,PhpStorm 正确地看到了文件并提示它们,也许我应该在我的应用程序中的 services yaml 中定义一些东西来指向 Officer/ 命名空间,但不能这样做。

任何帮助将不胜感激,干杯:)

我查看了类似的问题,但没有找到任何答案,如果有人会指出我与问题解决者重复的问题,我会很乐意关闭这个:)

更新:我解决了这个问题。我在 App\ 命名空间中有类,它们实现了来自 Officer\ 包的接口。Symfony 无法自动装配,我不得不在 services.yaml 中为它们添加映射

谢谢大家的帮助,加油

0 投票
1 回答
321 浏览

php - 服务弃用:Symfony 要求更改服务名称

我目前第一次尝试从 Symfony 3.4 迁移到 4.3。

我正处于必须删除折旧的阶段,以便我可以通过撰写文档来更新依赖项

我已经解决了所有的弃用问题,除了一个我有一点麻烦的问题。这里是:

依赖于类型“AppBundle\Entity\AdaImporterDoc”的服务自动注册自 Symfony 3.4 以来已被弃用,并且在 4.0 中将不再支持。改为创建一个名为“AppBundle\Entity\AdaImporterDoc”的服务。

0 投票
1 回答
761 浏览

symfony-4.3 - symfony 4.3 自动验证不起作用

我已经阅读了有关新功能的信息: symfony 4.3自动验证 https://symfony.com/blog/new-in-symfony-4-3-automatic-validation 所以 Doctrine 注释应该足够了,无需显式手动添加验证器注释(如@Assert\NotNull()..)但是我不明白如何使它工作。我有 symfony 4.3 应用程序,当前创建实体,真的不想手动添加验证器注释,而是使用这个新的自动验证功能。我是 Symfony 的新手,请详细说明。

它应该在没有明确添加的情况下工作, @Assert\NotNull()但它没有