0

我正在使用 ExpressionEngine 和 Safecracker 构建一个在 FB 页面内运行的简单 Facebook 应用程序。

我的代码在 Facebook 页面之外正常运行,但在页面内部它显示一个空白屏幕。我已经能够将其缩小到这段代码:

{exp:safecracker channel="lekker_fietsen_competitie" return="/"}
<input type="text" name="title" value=""><br>
<textarea name="description"></textarea><br>
<input type="file" name="image"><br>
<input type="submit">
{/exp:safecracker}

我猜 Safecracker 在某种程度上违反了我在 FB 页面内能做和不能做的事情,但我看不出它是什么。

我尝试过的事情:

  • FB页面内允许隐藏字段,它们可以正常工作,因此它们不是问题的原因
  • Safecracker 生成的脚本和其他内容在 FB 页面内运行;我已经对所有内容进行了硬编码,如果硬编码似乎没有问题

您会说解决方案很简单:对表单进行硬编码。但我不能,因为表单有两个字段,比如 ExpressionEngine 需要写的条目:

<input type="hidden" name="meta" value="cIssFx0NbcTnVxs7mWiSvwx0OwJ62c0KKoeGbZu8RMTHMJfNsv/OS0q8mtPh9HLmu/
    ru2n8a5J4S3wgyB8c+XWBdNfUrTCeWNrKYwDOxSkxB34I5UNN8XpVQt/
    wYc5FajtTx4VyGomwAHZ0vC7gXTxH4cYhU/zGx7S/UB6DgAyKk3cnl2f3+zbDId
    +KbU7msE0O1AJX3Nx7QaE6IpKJpXnQeiMISCHC1aOxJriZ/5eWIhqZdDz18rRbs4
    kdHCQ9RChFPtiB4rtjxque1CGylWj+OjiTaEVA68IVmC7c3AFrL9Wf4wxojOchPmlEx
    0W2OD5T/ERy0mV6GbCnkAZcQRdQjgjx3Rd7SQrXOO6u7gHh+vqrzw/y/y7dqlMz1LGmrj
    kdnOqdM/9bPej8Sp+3dCo2mDjf4WgCfLKze3P7XgLc=">
<input type="hidden" name="XID" value="1fba9120c5e00cfcb665bd0c7e147757b7888847">

那么,从这里到哪里去呢?我可能违反了哪些条款/准则?

4

1 回答 1

1

我提交了一张票并做了以下事情。导航到表达式引擎 -> 库 -> Cp.php 并转到第 75 行。票证https://support.ellislab.com/bugs/detail/19663

ee()->output->set_header('X-Frame-Options: SameOrigin');

用。。。来代替

if (isset($_GET['D']) AND $_GET['D'] == 'cp')
{
    ee()->output->set_header('X-Frame-Options: SameOrigin');
}
于 2013-08-22T18:50:05.793 回答