如何在Silex应用程序中避免超出请求范围的异常?

k0pernikus

重组了silex1.2应用程序后,我受到以下攻击:

消息“已访问请求服务超出请求范围”的异常“ RuntimeException”。尝试将该调用移至前处理程序或控制器。” 在../vendor/silex/silex/src/Silex/Application.php:150中

我曾经以这种方式设置应用程序的配置:

$app = new Silex\Application();
$app->register(new ServiceControllerServiceProvider());
$app->register(new ConfigServiceProvider($configFile));
$fileFinder = new \Symfony\Component\Finder\Finder();
foreach ($fileFinder->in($configPath . 'country') as $file) {
   /* @var SplFileInfo $file */
    $app->register(new ConfigServiceProvider($file->getRealPath()));
}

我现在想foreach通过注入一个从用户请求中得到的特定值来替换循环。所以我想进入$request->query->get('country'); 但是我不能因为app['request']那一点超出了范围。

我不明白错误消息,如:

  • 什么时候以及为什么在silex中请求对象超出范围?
  • 在设置应用程序的第一件事时,我应该如何将调用移至处理程序和控制器之前?

基本上,我想尽早访问请求数据以获取一个值。为了实现相应的引导应用程序,我该如何实现?

最大P。

您尝试Request在初始化之前使用$app->run()
您可以手动初始化Request

$app = new \Silex\Application();
$app['request'] = \Symfony\Component\HttpFoundation\Request::createFromGlobals();
.....
$app->run($app['request']);

或在服务提供商中进行延迟加载:

$app['object1'] = $app->share(function ($app) {
    return new Object1($app['request']->query->get('country'));
});
...

并在控制器中的某个位置将这些变量作为 $app['object1']

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在Android中设置应用程序范围的字体?

来自分类Dev

由于未捕获的异常,如何捕获终止应用程序:NSArrayM objectAtIndex索引0超出了空数组的范围

来自分类Dev

如何在Angular应用程序中同步HTTP请求?

来自分类Dev

Laravel 应用程序中的 Axios 请求返回 UnexpectedValueException 异常

来自分类Dev

由于未捕获的异常“ NSRangeException范围或索引超出范围”,导致iOS错误终止应用程序

来自分类Dev

如何在ASP.NET MVC应用程序中的MVCMailer中处理异常

来自分类Dev

如何在单页 Web 应用程序中处理 node.js 中的“发布”请求

来自分类Dev

如何在使用try / catch的应用程序中记录所有异常?

来自分类Dev

如何在Rails应用程序中创建自定义异常?

来自分类Dev

如何在Xamarin.Forms PCL Android移动应用程序中修复缺少的方法异常

来自分类Dev

如何在使用try / catch的应用程序中记录所有异常?

来自分类Dev

如何在ASP.NET应用程序中序列化我的异常?

来自分类Dev

如何在Java FX应用程序中捕获任务异常?

来自分类Dev

由于未捕获的异常“ NSRangeException”而终止应用程序,原因:“ ***-[__ NSArrayM objectAtIndex:]:索引0超出了空数组的范围”

来自分类Dev

由于未捕获的异常“ NSRangeException”而终止应用程序,原因:-[__ NSArrayM objectAtIndex:]:索引0超出了空数组的范围”

来自分类Dev

如何避免在基于Sirius的应用程序中调用enqueueGet?

来自分类Dev

如何避免 Flask Web 应用程序中的代码重复

来自分类Dev

如何避免线程应用程序中的全局变量

来自分类Dev

如何在Qt应用程序中清理字符范围内的每个输入

来自分类Dev

如何在“应用程序”菜单中添加系统范围的菜单项?

来自分类Dev

如何在应用程序中的任何地方丢失键盘范围?

来自分类Dev

如何在应用程序中禁用系统范围的电池电量不足警报

来自分类Dev

Java 应用程序中的索引 1 超出范围错误

来自分类Dev

如何在Java Spring应用程序中缓存使用Netflix的Feign库发出的HTTP请求

来自分类Dev

您如何在EmberJs应用程序中“拦截”所有HTTP请求?

来自分类Dev

如何在Windows 10 Preview中安装应用程序请求路由ARR 3.0?

来自分类Dev

如何在Android应用程序中请求特定的文本大小?

来自分类Dev

如何在Laravel Vapor应用程序中获取HTTP请求的IP?

来自分类Dev

如何在我的应用程序Angular 9中限制API请求

Related 相关文章

  1. 1

    如何在Android中设置应用程序范围的字体?

  2. 2

    由于未捕获的异常,如何捕获终止应用程序:NSArrayM objectAtIndex索引0超出了空数组的范围

  3. 3

    如何在Angular应用程序中同步HTTP请求?

  4. 4

    Laravel 应用程序中的 Axios 请求返回 UnexpectedValueException 异常

  5. 5

    由于未捕获的异常“ NSRangeException范围或索引超出范围”,导致iOS错误终止应用程序

  6. 6

    如何在ASP.NET MVC应用程序中的MVCMailer中处理异常

  7. 7

    如何在单页 Web 应用程序中处理 node.js 中的“发布”请求

  8. 8

    如何在使用try / catch的应用程序中记录所有异常?

  9. 9

    如何在Rails应用程序中创建自定义异常?

  10. 10

    如何在Xamarin.Forms PCL Android移动应用程序中修复缺少的方法异常

  11. 11

    如何在使用try / catch的应用程序中记录所有异常?

  12. 12

    如何在ASP.NET应用程序中序列化我的异常?

  13. 13

    如何在Java FX应用程序中捕获任务异常?

  14. 14

    由于未捕获的异常“ NSRangeException”而终止应用程序,原因:“ ***-[__ NSArrayM objectAtIndex:]:索引0超出了空数组的范围”

  15. 15

    由于未捕获的异常“ NSRangeException”而终止应用程序,原因:-[__ NSArrayM objectAtIndex:]:索引0超出了空数组的范围”

  16. 16

    如何避免在基于Sirius的应用程序中调用enqueueGet?

  17. 17

    如何避免 Flask Web 应用程序中的代码重复

  18. 18

    如何避免线程应用程序中的全局变量

  19. 19

    如何在Qt应用程序中清理字符范围内的每个输入

  20. 20

    如何在“应用程序”菜单中添加系统范围的菜单项?

  21. 21

    如何在应用程序中的任何地方丢失键盘范围?

  22. 22

    如何在应用程序中禁用系统范围的电池电量不足警报

  23. 23

    Java 应用程序中的索引 1 超出范围错误

  24. 24

    如何在Java Spring应用程序中缓存使用Netflix的Feign库发出的HTTP请求

  25. 25

    您如何在EmberJs应用程序中“拦截”所有HTTP请求?

  26. 26

    如何在Windows 10 Preview中安装应用程序请求路由ARR 3.0?

  27. 27

    如何在Android应用程序中请求特定的文本大小?

  28. 28

    如何在Laravel Vapor应用程序中获取HTTP请求的IP?

  29. 29

    如何在我的应用程序Angular 9中限制API请求

热门标签

归档