忽略Plone 5上脚本Python上工作流doActionFor的CSRF保护

忽略Plone 5上脚本Python上工作流doActionFor的CSRF保护,plone,Plone,我正在尝试使用脚本Python进行工作流转换 像这样: wtool = context.portal_workflow obj = context.Plone.doc1 wtool.doActionFor(obj, 'publish') obj.reindexObject() 但我得到了确认页面。此页面标题为“确认用户操作” 我认为这是CSRF保护的自动功能。请让我知道。忽略对我的脚本的保护 我想您的脚本是通过链接调用的。您需要更改脚本的调用方式: 或者将其称为表单中的帖子(plone.pr

我正在尝试使用脚本Python进行工作流转换

像这样:

wtool = context.portal_workflow
obj = context.Plone.doc1
wtool.doActionFor(obj, 'publish')
obj.reindexObject()
但我得到了确认页面。此页面标题为“确认用户操作”


我认为这是CSRF保护的自动功能。请让我知道。忽略对我的脚本的保护

我想您的脚本是通过链接调用的。您需要更改脚本的调用方式:

  • 或者将其称为表单中的帖子(plone.protect将自动向表单中添加验证器令牌)
  • 在链接的查询字符串中添加令牌(请参阅)

非常感谢!我可以运行我的脚本。我为调用url制作了另一个脚本authenticator=context.restrictedTraverse(“@@authenticator”)url=“/Plone/portal\u skins/custom/wf\u tool\u”+”?\u authenticator=“+authenticator.token()context.REQUEST.RESPONSE.redirect(url)`