【问题标题】:TYPO3: How to use an external PHP Script (in fileadmin), where i can check the cookieTYPO3:如何使用外部 PHP 脚本(在 fileadmin 中),我可以在其中检查 cookie
【发布时间】:2021-09-20 16:05:04
【问题描述】:

我正在为我的服务器使用 TYPO3 11.3.3,我需要一个 PHP 脚本,它可以读取和检查typo3_fe cookie。有什么解决办法吗?我不能使用扩展程序,我必须保持简单。

【问题讨论】:

    标签: typo3 typo3-11.x


    【解决方案1】:

    除了读取 cookie 之外,PHP 脚本究竟应该做什么? 您可以使用 TypoScript 条件来检查 cookie 是否存在:

    [request.getCookieParams()['foo'] == 1]

    详情请参阅documentation

    【讨论】:

    • 我可以把这一行放在我的 PHP 脚本中吗?或者我还有其他事情要做吗?
    • 我写的是 TypoScript。所以你需要把它放到你的 TypoScript 模板中。请查看有关 conditions in TyposScript 工作原理的文档。
    【解决方案2】:

    唯一的方法是内容对象USER。查看documentation

    例子

    page = PAGE
    page.10 = USER_INT
    page.10 {
      userFunc = Vendor\ExtensionName\ExampleTime->printTime
    }
    

    但是文档也说明了

    属性 includeLibs 已在 TYPO3 8.0 中删除。在早些时候 userFunc 类的版本有时存储在 fileadmin/ - 这不再是开箱即用的,也不推荐。

    为了获得最佳结果,您应该始终无一例外地放置您的 扩展中的类文件,为此定义作曲家类加载 扩展并将此扩展添加为项目的依赖项。 然后,当您通过以下方式引用它们时,您的类将毫无问题地加载 他们的班级名称。

    【讨论】:

      【解决方案3】:

      Cookie 与请求一起发送。话虽如此,检查 cookie 的最佳方法是中间件。使用中间件,您可以检查发送的 cookie 并使用您的脚本对其进行评估。

      这里是关于中间件的documentation

      这也可能会有所帮助https://stackoverflow.com/a/63951593/7162477

      最好的问候

      【讨论】:

        猜你喜欢
        • 2011-03-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-05-13
        • 1970-01-01
        • 2014-01-07
        相关资源
        最近更新 更多