使用方法=&#34提交表单;获取"在Typo3后端模块中出错

时间:2016-10-06 08:13:08

标签: typo3 extbase

我制作了一个typo3后端模块,其中包含一个方法" get"在视图文件中。但是当我尝试提交表单时,我会收到以下错误。enter image description here

我也尝试过方法=" post"它工作正常。 如果有人对此有所了解,请分享。 感谢

最近我使用了一个TER扩展名" ics_awstats /",当我使用完整列表页面时出现同样的无效令牌问题。

请参阅第二个附件。

最初没有在表单中指定任何方法,因此我在method="post"这个文件中添加了ics_awstats/awstats/awstats.pl,问题就解决了。

enter image description here

2 个答案:

答案 0 :(得分:0)

TYPO3使用表单中隐藏/自动生成的字段来验证正确的使用方法 如果您更改form-method以获取可能会从action-url中删除一些参数。

另一个可能的原因可能是:你不能在get-parameters中传输如此多的数据而不是post-parameters。也许你用尽了URL和URL-Parameters

的2KB限制

答案 1 :(得分:0)

从TYPO3 6.2开始,指向后端模块的链接使用CSRF令牌进行签名,该令牌当然必须是URL参数的一部分。实用程序方法BackendUtility::getModuleUrl()能够创建正确的CSRF签名URL。在form-protection documentation

中查找更多详细信息

例如,扩展管理器的URL在TYPO3 6.2中如下所示 /typo3/mod.php?M=tools_ExtensionmanagerExtensionmanager&moduleToken=2f1f29410c79fe063d126f603afa0f993591ad32

自定义后端模块的URL应该与参数类似。