CKEditor 中未触发 UploadFile 回调

UploadFile callback is not being triggered in CKEditor

我正在使用启用了 Office2013 样式的最新 Full CKEditor (4.5.3)。

我在此处添加了 filebrowserImageUploadUrl 选项:

CKEDITOR.replace( 'news_content' ,
            {
                "filebrowserImageUploadUrl": "/path/to/script.php"
            });

上传图像时,backed 返回正确的 HTML 和 headers 给 CKEditor,但它的作用 - 只是显示 JavaScript 代码,实际上并没有触发它.如果我 copy-paste 那个 JS 到浏览器 (Chrome) 控制台 - 它工作(将选项卡切换到第一个并输入图像)。

请查看随附的屏幕截图。我错过了什么?

P.S> 第一个参数是在上传文件时从请求中获取的,所以在这种情况下它是 = 1(这不是问题:))

正如@Wiktor 所猜测的那样,问题出在设置正确 headers 上。我就快到了,设置错误 headers.

右headers显然是:"text/html"(不是"plain/text",在这种情况下它只是将其识别为文本)

    $uploadResponse = new Response();
    $uploadResponse->headers->set('Content-type', 'text/html');

    $content = "<script type=\"text/javascript\">\n";
    $content .= "window.parent.CKEDITOR.tools.callFunction(" . $funcNum . ", '/uploads/news_image/" . $response['uploadedName'] . "', '');\n";
    $content .= "</script>";

    $uploadResponse->setContent($content);