Javascript Wysihtml5:如何将插入的图像下载到服务器?
我目前正在使用Wysihtml5 HTML文本编辑器。它工作得很好。但现在我想在AmazonS3存储桶中存储插入的图像 当有人从URL插入图像时,该图像应该位于我自己的服务器或存储桶上 目前所见即所得的HTML5编辑器通常保存图像源。 请看这里: 当我按insert image时强>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请求触发图像下载的插入图像按钮?在实现此功能之前,我应该采取哪些步骤?以下是具体操作方法: 请看链接: 粘贴基于
如何使用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的文本编辑器