zoukankan      html  css  js  c++  java
  • expressjs 支持umeditor 的图片上传

    umedtor 的文件上传 是form 提交。
    请求的header
    Accept:
    text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
     
    在dialogs 里面的image.js
                    $('<iframe name="up"  style="display: none"></iframe>').insertBefore(me.dialog).on('load', function(){
                        var r = this.contentWindow.document.body.innerHTML;
                        if(r == '')return;
                        me.uploadComplete(r);
                        $(this).unbind('load');
                        $(this).remove();
     
                    });
    表明返回的是html。so,我们要在express 返回制定的header Content-Type 必须是html
    PS:umeditor 这样做事兼容IE9以下的浏览器,如果不是Content-Type html. form 表单提交就变成下载文件了。
     
     
    在expressjs 中
    res.json 方法如果没有设置,默认设置Content-Type=‘application/json’;
    最后还是调用send 方法
    源码如下
    if (!this.get('Content-Type')) {
    this.set('Content-Type', 'application/json');
    }

    return this.send(body);
    这个不是我们想要的response header。。两种方案
     
    1、手动设置
    res.type('html');
    
    
    在res.json
    2、直接调用send 方法
    result.state='SUCCESS';
    res.send(JSON.stringify(result))
  • 相关阅读:
    实验七、信号
    实验六 进程基础
    实验五 shell脚本编程
    实验四 Linux系统C语言开发环境学习
    实验三 Linux系统用户管理及VIM配置
    实验二 Linux系统常用操作命令
    实验一Linux系统与应用课程准备
    实验八 进程间通信
    实验七 信号
    实验六 进程基础
  • 原文地址:https://www.cnblogs.com/yoable/p/6370190.html
Copyright © 2011-2022 走看看