Php 尝试上载到Cloudinary时收到混淆错误
我一直在努力让cloudinary上传工作。Php 尝试上载到Cloudinary时收到混淆错误,php,jquery,laravel,upload,cloudinary,Php,Jquery,Laravel,Upload,Cloudinary,我一直在努力让cloudinary上传工作。 使用php cloudinary库中的示例,它可以独立工作,并且可以毫无问题地上传。 当我将代码移动到现有的Laravel应用程序中时,我遇到了问题。 也就是说,我在控制台中得到了这个错误: XMLHttpRequest cannot load https://api.cloudinary.com/v1_1/mycloudinaryname/auto/upload. The request was redirected to 'http://loca
使用php cloudinary库中的示例,它可以独立工作,并且可以毫无问题地上传。
当我将代码移动到现有的Laravel应用程序中时,我遇到了问题。 也就是说,我在控制台中得到了这个错误:
XMLHttpRequest cannot load https://api.cloudinary.com/v1_1/mycloudinaryname/auto/upload. The request was redirected to 'http://localhost/laravelappfolder/cloudinary_co…=%23%3CSet%3A0x0000000c3691e0%3E&type=upload&version=1457930756&width=1920', which is disallowed for cross-origin requests that require preflight. $cors_location提供php库附带的cors html文件的位置。laravel内的位置正确。
我知道我可能遗漏了一些简单的东西,但我就是想不出它可能是什么。
以下是JQuery代码:
$(function() {
$('.cloudinary-fileupload')
.fileupload({
dropZone: '#file_drop',
start: function () {
$('.status_value').text('Please wait, starting upload...');
},
progress: function (e, data) {
$('.status_value').text('Please wait, uploading...');
var progval = Math.round((data.loaded * 100.0) / data.total);
$('#progtext').text(progval+'%');
$(".progress-bar").css('width', progval+'%').attr('aria-valuenow', progval);
},
})
.on('cloudinarydone', function (e, data) {
$('.status_value').text('Idle');
$(".progress-bar").css('width', '0%').attr('aria-valuenow', 0);
$.post('{{ $cloud_upcomp }}', data.result);
var info = $('<div class="uploaded_info"/>');
$(info).append($('<div class="image"/>').append(
$.cloudinary.image(data.result.public_id, {
format: data.result.format, width: 150, height: 150, crop: "fill"
})
));
$('.uploaded_info_holder').append(info);
});
});
$(函数(){
$(“.cloudinary文件上载”)
.文件上传({
dropZone:“#文件_drop”,
开始:函数(){
$('.status_value').text('请稍候,开始上载…');
},
进度:功能(e、数据){
$('.status_value').text('请稍候,正在上载…');
var progval=数学四舍五入((data.loaded*100.0)/data.total);
$('progtext').text(progval+'%');
$(“.progress bar”).css('width',progval+'%').attr('aria-valuenow',progval);
},
})
.on('CloudinaryOne',函数(e,数据){
$('.status_value')。文本('Idle');
$(“.progress bar”).css('width','0%').attr('aria-valuenow',0);
$.post({{$cloud\u upcomp}}),data.result;
风险值信息=$('');
$(信息).append($('').append(
$.cloudinary.image(data.result.public_id{
格式:data.result.format,宽度:150,高度:150,裁剪:“填充”
})
));
$('.upload_info_holder')。追加(info);
});
});
$cloud\u upcomp是cloudinary php库中upload\u complete.php文件的位置。“cloudinarydone”事件从未被触发,因为它给出了以前的错误。但奇怪的是,图像文件已经上传,因为我可以在我的cloudinary帐户中查看上传的文件。
以下是Cloudinary库生成的HTML(即函数生成的
标记):
等待用户选择
我刚刚覆盖了我的帐户名,但是当函数生成URL时,它具有正确的帐户名。好的,我觉得有点愚蠢和害羞
我的问题似乎更多地源于JS导入订购。
<script type="text/javascript" src="{{ asset('assets/vendors/cloudinary/js/jquery.ui.widget.js') }}"></script>
<script type="text/javascript"
src="{{ asset('assets/vendors/cloudinary/js/jquery.iframe-transport.js') }}"></script>
<script type="text/javascript" src="{{ asset('assets/vendors/cloudinary/js/jquery.fileupload.js') }}"></script>
<script type="text/javascript" src="{{ asset('assets/vendors/cloudinary/js/jquery.cloudinary.js') }}"></script>
这是JS文件必须设置的顺序。而且它们必须是页脚部分中的第一组JS文件,尤其是在cloudinary JQuery设置之前。一旦我这样做了,它就开始正常工作,没有错误。
请共享呈现的HTML页面。特别是上传程序代码,包括输入标记和相关的jQuery。已经在我的问题中添加了HTML代码
<div class="row">
<div class="col-md-6" id="file_drop">
<form>
<span class="status_value form-label">Awaiting user selection</span>
<input class='cloudinary-fileupload' data-cloudinary-field='fileupload' data-form-data='{"timestamp":1458079831,"callback":"http:\/\/localhost\/laravel\/public\/assets\/vendors\/cloudinary\/lib\/cloudinary_cors.html","public_id":"blahblah1458079831","upload_preset":"repository"}' data-url='https://api.cloudinary.com/v1_1/myaccount/auto/upload' multiple='1' name='file' type='file'/>
<div class="progress">
<div class="progress-bar progress-bar-info progress-bar-striped" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100">
<span id="progtext" class="progress-text"></span>
</div>
</div>
</form>
</div>
<div class="uploaded_info_holder"></div>
</div>
<script type="text/javascript" src="{{ asset('assets/vendors/cloudinary/js/jquery.ui.widget.js') }}"></script>
<script type="text/javascript"
src="{{ asset('assets/vendors/cloudinary/js/jquery.iframe-transport.js') }}"></script>
<script type="text/javascript" src="{{ asset('assets/vendors/cloudinary/js/jquery.fileupload.js') }}"></script>
<script type="text/javascript" src="{{ asset('assets/vendors/cloudinary/js/jquery.cloudinary.js') }}"></script>