场景:上传图片到远程服务器时,本地无法拿到服务器图片临时路径。

   <!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>上传文件到远程服务器</title>
    <script src="js/jquery.1.9.1.js" type="text/javascript" charset="utf-8"></script>
</head>
<body>
<div class="uploadImg">
    <input type="file" id="file"/>
    <input type="hidden" id="hidImgName"/>
    <input type="button" id="btnUploadImg" onclick='upload()' value="上传"/>
    <input type="button" id="btnDeleteImg" value="删除"/>
</div>
<hr>
<script>
    function upload() {
        <!--通过FormData构造函数创建一个空对象-->
        var formData = new FormData();
        var input = document.getElementById('file');
        /**
         * 通过formData.append(key, val)向请求接口添加请求参数
         */
        <!--可以通过append()方法来追加数据-->
        formData.append('img', input.files[0]);
        <!--把图片的类型添加进去-->
        formData.append('type', 'up');
        /**
         * 通过formData.set(key, val)向请求接口设置请求参数
         */
        <!--通过set方法对值进行设置-->
        //formData.set("name","laoliu");
        //console.log(formData.get("name"));
        <!--通过get方法对值进行读取-->
        //console.log(formData.get("name"));

        <!--url 远程上传请求地址-->
        var url = 'www.xxx.com/xxx';
        $.ajax({
            url: url,
            data: formData,
            type: "POST",
            async: false,
            cache: false,
            contentType: false,
            processData: false,
            success: function (data) {
                console.log(data);
                //success
            },
            error: function () {
                //error
                //
            }
        })
    }
</script>
</body>
</html>

完成代码下载:

链接:https://pan.baidu.com/s/1madY5nhPyUcrgWmEhV7uQg
提取码:8or7
复制这段内容后打开百度网盘手机App,操作更方便哦

关注友儿不迷路

Last modification:August 20th, 2020 at 10:57 am
如果觉得我的文章对你有用,请随意赞赏