zoukankan      html  css  js  c++  java
  • django —— KindEditor

    #跨域上传方法
    def frontupload(request):
    if request.method == 'POST':
    item = {}
    file = request.FILES.get('imgFile')
    #定义跳转网址,就是前端伪造好的页面
    callBackPath = 'http://localhost:8080/redirect.html'
    f = open(os.path.join(UPLOAD_ROOT,'',file.name),'wb')
    item['message'] = '上传成功'
    item['url'] = 'http://localhost:8000/upload/'+ file.name
    item['error'] = 0
    #写文件 遍历图片文件流
    for chunk in file.chunks():
    f.write(chunk)
    return HttpResponseRedirect(callBackPath + "?error=0&url="+item['url'])

    其实页面有太大的区别   只是回调了一下

    #回调页面  redirect.html

    <html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>跨域重定向</title>
        <script type="text/javascript">
        function getParameter(val) {
            var uri = decodeURI(window.location.search);
            var re = new RegExp("" + val + "=([^&?]*)", "ig");
            return ((uri.match(re)) ? (uri.match(re)[0].substr(val.length + 1)) : null);
        }
    
            var upload_callback = function() {
                var error = getParameter("error");
                error = parseInt(error)
                var dataObject;
                if(error==0){
                    var url = getParameter("url");
                    dataObject = {"error": error, "url": url};
                }else{
                    var message = getParameter("message");
                    dataObject = {"error": error, "message": message};
                }
                var data =  JSON.stringify(dataObject)
                document.getElementsByTagName("body")[0].innerHTML = '<pre>' + data + '</pre>';
            }
        </script>
    </head>
    <body onload="upload_callback();">
    </body>
    </html>
    #kindEditor    index.html
                initKindEditor();
                function initKindEditor() {
                var kind = KindEditor.create('#my_reply_'+com_id+'', {
                     '80%',       // 文本框宽度(可以百分比或像素)
                    height: '30%',     // 文本框高度(只能像素)
                    minWidth: 400,       // 最小宽度(数字)
                    minHeight: 100,     // 最小高度(数字)
                    items : [ 'emoticons', 'image'],
                    uploadJson:'http://localhost:8000/md_admin/front_upload', 
                });        
            }
    上传图片的话 必须有 uploadJson:'http://localhost:8000/md_admin/front_upload', 
    后面的网址是你请求的网址
     
    效果:
  • 相关阅读:
    InPut 标签 HTML(表单)
    JavaScript Table 对象
    JCBD
    JCBD
    JavaScript prototype 属性
    Java8 新特性
    JavaScript 对象的使用
    Java 反射
    虚拟机VirtualBox启动虚拟机报Only Ethernet Adapter' (VERR_INTNET_FLT_IF_NOT_FOUND).
    Impala 数值函数
  • 原文地址:https://www.cnblogs.com/weifeng-888/p/10730750.html
Copyright © 2011-2022 走看看