gpt4 book ai didi

Cloudinary jQuery 直接上传问题

转载 作者:行者123 更新时间:2023-12-02 03:32:59 25 4
gpt4 key购买 nike

我正在实现 Cloudinary Jquery 上传。从我的文件上传网页,如果我浏览到另一个网站(google.com 或任何外部网站),然后单击浏览器上的后退按钮进入同一文件上传页面,上传将失败。

我得到的错误信息是(来自 Firebug):

400 错误请求{"error":{"message":"上传预设使用未签名上传时必须指定上传预设”}}

  • 我没有在 Cloudinary 管理控制台上启用未签名上传因为我的目的是签名上传

这是在后端为 data-form-data 创建的 JSON 数据:

{"timestamp":1409146953,"callback":"http://newappsure.herokuapp.com/vendor/cloudinary/cloudinary_cors.html","signature":"19071a3e822eed51238454e359589f52cccca042","api_key":"224456847515364”}

下面是 javascript 和输入 HTML:

   <script type="text/javascript”>
$.cloudinary.config({cloud_name:'dashy', api_key:’XXXXXXXXXXXXXXX'});
</script>
<input name="file" type="file" id="uploadinput" class="cloudinary-fileupload" data-cloudinary-field="image_upload"
data-form-data="" ></input>
<script>
$.ajax({
url: '/filer',
type: 'POST',
success: function(response){
$('#uploadinput').attr('data-form-data', response);
}
});
</script>

这是生成 JSON 的 Ruby 后端:

 post '/filer' do
ts = Time.now.getutc.to_time.to_i.to_s
secret="XXXXXXXXXXXXXXXXXXXXXX"
altogether="callback=http://newappsure.herokuapp.com/vendor/cloudinary/cloudinary_cors.html&timestamp="+ts+secret
sig=Digest::SHA1.hexdigest altogether
ts = Time.now.getutc.to_time.to_i
{:timestamp => ts, :callback => "http://newappsure.herokuapp.com/vendor/cloudinary/cloudinary_cors.html", :signature => sig, :api_key =>"XXXXXXXXXXXXXXXX"}.to_json
end

请帮助我理解我做错了什么?

最佳答案

虽然您的解决方案可能有效,但更理想的方法是更新上传参数以调用 $(...).fileupload({formData: data}),其中 data 是参数散列(不是 JSON 序列化)。想要查询更多的信息: http://support.cloudinary.com/entries/24950218-Why-is-updating-a-cloudinary-fileupload-field-dynamically-not-working-

关于Cloudinary jQuery 直接上传问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25540479/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com