【问题标题】:CKFinder 3 Returning Wrong URLs for Selected FilesCKFinder 3 为所选文件返回错误的 URL
【发布时间】:2016-05-19 12:15:19
【问题描述】:

在我的站点上集成 CKFinder 3 的 ASP.NET 版本时,我遇到了一个奇怪的问题。我正在创建一个模式实例来选择一个文件来填充字段的值,但是,当 files:choose 事件发生时,使用 getUrl() 而不是“/uploads/images/path/to/image.ext”的预期 URL被解雇了,我却得到了以下网址返回给我,而我终其一生都无法弄清楚为什么或如何解决它。

http://domain.tld/path/to/ckf/connector?command=Proxy&lang=en&type=Images&currentFolder=%2Fpath%2Fto%2F&hash=[hash]&fileName=image.ext`

如果相关,“Web.config”中我的“uploads”目录的backend 信息如下所示:

<backend name="default" adapter="local" useProxyCommand="true">
    <option name="root" value="../../../uploads" />
    <option name="baseUrl" value="/uploads/" />
</backend>

然后我用来创建模态实例并监听files:choose 事件的 JavaScript 如下所示(我试图填充的字段是用于创建模态的按钮的前一个兄弟):

document.getElementById("openckf").addEventListener("click",function(){
    var field=this.previousSibling;
    CKFinder.modal({
        onInit:function(finder){
            finder.on("files:choose",function(event){
                field.value=event.data.files.first().getUrl();
            });
        }
    });
},0);

更新:当我将 CKFinder 添加到 CKEditor 时,也会发生同样的事情。

【问题讨论】:

    标签: javascript asp.net ckfinder


    【解决方案1】:

    要使用直接 URL-s,您需要禁用代理命令功能:只需在后端配置中设置 useProxyCommand="false",或完全删除此属性。此选项定义指向文件的链接是否应该是直接的,或者文件应该由连接器提供服务。

    【讨论】:

      猜你喜欢
      • 2018-04-12
      • 1970-01-01
      • 2015-06-25
      • 2018-11-03
      • 2015-04-19
      • 2016-04-17
      • 2018-01-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多