Javascript Wysihtml5:如何将插入的图像下载到服务器?

Javascript Wysihtml5:如何将插入的图像下载到服务器?,javascript,jquery,twitter-bootstrap,image-upload,wysihtml5,Javascript,Jquery,Twitter Bootstrap,Image Upload,Wysihtml5,我目前正在使用Wysihtml5 HTML文本编辑器。它工作得很好。但现在我想在AmazonS3存储桶中存储插入的图像 当有人从URL插入图像时,该图像应该位于我自己的服务器或存储桶上 目前所见即所得的HTML5编辑器通常保存图像源。 请看这里: 当我按insert image时 它应该将图像存储到我的服务器 然后它应该用我自己的服务器url路径替换图像的旧源url 如何使用Ajax请求触发图像下载的插入图像按钮?在实现此功能之前,我应该采取哪些步骤?以下是具体操作方法: 请看链接: 粘贴基于

我目前正在使用Wysihtml5 HTML文本编辑器。它工作得很好。但现在我想在AmazonS3存储桶中存储插入的图像

当有人从URL插入图像时,该图像应该位于我自己的服务器或存储桶上

目前所见即所得的HTML5编辑器通常保存图像源。 请看这里:

当我按insert image时

  • 它应该将图像存储到我的服务器
  • 然后它应该用我自己的服务器url路径替换图像的旧源url

  • 如何使用Ajax请求触发图像下载的插入图像按钮?在实现此功能之前,我应该采取哪些步骤?

    以下是具体操作方法:

    请看链接:

    粘贴基于事件的图像上载程序脚本:

    我刚刚写了这篇文章

    工作原理:

    <!DOCTYPE html>
    <html>
    <head>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js">
    </script>
    <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet">
    <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet">
    <script type="text/javascript">
    $( document ).ready(function() {
    $('#insert').on('input', function(e) {
       var $val = $('#insert').val();
       $.ajax({
           url: 'upload.php',
           type: 'POST',
           data: { imageurl: $val} ,
           success: function (response) {
               $('#newimageurl').val(response);
               $('#showimage').attr('src', response);
           },
           error: function () {
               //your error code
           }
       }); 
    });
    });
    </script>
    <title></title>
    </head>
    <body>
    <form class="form-horizontal" style="padding: 10%">
        <div class="form-group">
            <label class="control-label col-sm-2" for="ImageURL">Insert Image: </label>
            <div class="col-sm-10">
                <input class="form-control" id="insert" placeholder="Enter ImageURL" type="text">
            </div>
        </div>
        <div class="form-group">
            <label class="control-label col-sm-2" for="ImageURL">Your New Image URL:</label>
            <div class="col-sm-10">
                <input class="form-control" id="newimageurl" placeholder="Enter ImageURL" type="text">
            </div>
        </div>
        <div class="form-group">
            <label class="control-label col-sm-2" for="ImageURL">Your New Image:</label>
            <div class="col-sm-10"><img id="showimage" src=""></div>
        </div>
    </form>
    </body>
    </html>
    
    恰好当有人在输入字段中粘贴HTTP站点图像链接时,图像url通过ajax post请求文件发布到
    upload.php
    ,而
    upload.php
    文件下载图像并将其保存在本地服务器上,然后在对当前页面的ajax响应中接收新的图像url,因此您可以这样做任何与回应有关的东西

    代码如下:

    HTML:

    <!DOCTYPE html>
    <html>
    <head>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js">
    </script>
    <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet">
    <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet">
    <script type="text/javascript">
    $( document ).ready(function() {
    $('#insert').on('input', function(e) {
       var $val = $('#insert').val();
       $.ajax({
           url: 'upload.php',
           type: 'POST',
           data: { imageurl: $val} ,
           success: function (response) {
               $('#newimageurl').val(response);
               $('#showimage').attr('src', response);
           },
           error: function () {
               //your error code
           }
       }); 
    });
    });
    </script>
    <title></title>
    </head>
    <body>
    <form class="form-horizontal" style="padding: 10%">
        <div class="form-group">
            <label class="control-label col-sm-2" for="ImageURL">Insert Image: </label>
            <div class="col-sm-10">
                <input class="form-control" id="insert" placeholder="Enter ImageURL" type="text">
            </div>
        </div>
        <div class="form-group">
            <label class="control-label col-sm-2" for="ImageURL">Your New Image URL:</label>
            <div class="col-sm-10">
                <input class="form-control" id="newimageurl" placeholder="Enter ImageURL" type="text">
            </div>
        </div>
        <div class="form-group">
            <label class="control-label col-sm-2" for="ImageURL">Your New Image:</label>
            <div class="col-sm-10"><img id="showimage" src=""></div>
        </div>
    </form>
    </body>
    </html>
    
    
    $(文档).ready(函数(){
    $('#insert')。关于('input',函数(e){
    var$val=$('#insert').val();
    $.ajax({
    url:'upload.php',
    键入:“POST”,
    数据:{imageurl:$val},
    成功:功能(响应){
    $('#newimageurl').val(响应);
    $('showimage').attr('src',response);
    },
    错误:函数(){
    //您的错误代码
    }
    }); 
    });
    });
    插入图像:
    您的新图像URL:
    你的新形象:
    
    PHP:(upload.PHP)

    
    
    我检查了它,但它工作不正常..嘿,你应该用这个作为:我不懂你@UmairShahYousafzai?你检查了什么?什么工作不正常?我正在检查插入图像功能,它工作得不太好。起初它无法从
    https
    链接以及带有额外参数的链接添加图像,然后当我将链接改为
    http
    时,它只插入了一次图像,然后当我已删除图像并重试,因此不再添加插入图像。。!可能是某种错误…如描述中所述,它已不再维护谢谢你的关注@UmairShahYousafzai,你对我的问题有什么想法吗?2这只是一个基于
    JS
    的前端编辑器。它没有任何上传功能…你需要在通过
    PHP
    或任何东西提交时添加这些功能。。!它只插入带有远程服务器src的映像,而不将其上载到服务器。。!那很酷。我可以做这部分,但我更大的问题是如何将此解决方案连接到wysihtml?:)如果用户从文本编辑器中删除图像,会发生什么?我只是为我的问题找到了一个解决方案:)当用户从文本编辑器中删除图像时,您是否也希望能够删除图像?现在非常简单,您只需提及编辑器的输入id,就可以了。您可以开始了。。!是的,如果您的服务器上有数千个图像和内容,这将是一个大问题。基本上我想实现一个像Qora的文本编辑器