Playframework 如何影响播放控制器中的重定向行为?

Playframework 如何影响播放控制器中的重定向行为?,playframework,playframework-1.x,Playframework,Playframework 1.x,在游戏中,如果从控制器的公共方法调用,则始终遵循。在大多数情况下,这是一种良好的行为,但有时也可能令人讨厌。 所以我试着在游戏1.1中找出它是如何工作的 基本的是一些字节码增强,这是在play.classloading.enhancers.ControllersEnhancer中完成的。 在这里,您可以发现默认行为仍然存在一些异常: 如果您的方法由包play.mvc中的注释进行注释,例如Before注释 如果使用旁路-注释对操作进行注释,则此注释必须是一个内部类,因此名称以$ByPass结尾 如

在游戏中,如果从控制器的公共方法调用,则始终遵循。在大多数情况下,这是一种良好的行为,但有时也可能令人讨厌。 所以我试着在游戏1.1中找出它是如何工作的 基本的是一些字节码增强,这是在
play.classloading.enhancers.ControllersEnhancer
中完成的。 在这里,您可以发现默认行为仍然存在一些异常:

  • 如果您的方法由包
    play.mvc
    中的注释进行注释,例如Before注释
  • 如果使用
    旁路
    -注释对操作进行注释,则此注释必须是一个内部类,因此名称以
    $ByPass
    结尾
  • 如果您总是希望抑制重定向,则这两种解决方案都可以。但如果你只想在特殊情况下做呢? 然后可以调用
    ControllerInstrumentation.initActionCall()


    我没有找到关于它的描述,我只是分析代码。那么我的结论是正确的还是有任何缺点?

    因为我知道你们的假设是正确的


    也就是说,据我所知,您想要一个在执行后结束且不返回任何内容的方法?不要在末尾添加任何“render”调用(或对另一个方法的任何调用),这样应该可以工作。我将其用于cron作业。

    initActionCall确实非常有用,如果您需要调用另一个视图,但不想重定向: