雖然標題寫的是ASP.NET的解決方案,但是也可用在PHP,Jsp中。直接上代碼
首先在客戶端中配置
var editor;
document.domain = window.location.host;//js解析域
KindEditor.ready(function (k) {
editor = k.create('#editor_id',
{
uploadJson: GlobalConfig
.RestServiceUrl +
"/FileUpload/upload_json.ashx?folder=News&domainhost=" + window.location.host, // 'upload_json.ashx',
fileManagerJson: GlobalConfig
.RestServiceUrl +
"/FileUpload/file_manager_json.ashx?folder=News", //'file_manager_json.ashx',
allowFileManager: true,
resizeType: 0,
height: "500px", //編輯器的高度
urlType: 'domain' //讓上傳的文件記錄絕對路徑!
});
關鍵代碼部分為
document.domain = window.location.host;//js解析域
服務器端配置為
public void ProcessRequest(HttpContext context)
{
string folder = context.Request["folder"];
_webhostdomain = context.Request["domainhost"];
_returnstring = string.Format(@"<script type='text/javascript'>document.domain = '{0}'</script>",_webhostdomain);
....
context.Response.AddHeader("Content-Type", "text/html; charset=UTF-8");
context.Response.Write(_returnstring + JsonMapper.ToJson(hash));
context.Response.End();
}
類似於jsonp的方式解決
