3

使用此代码上传正确完成

<script>
var data = { "timestamp": "1403951115",
"callback": "http://localhost:8080/SimpleServlet/cloudinary_cors.html",
"signature": "3b1a708393db7cd0ef1df2be0c602ea99d9c64c3",
"api_key": "742866863611915" };
$('#uploadinput').attr('data-form-data', JSON.stringify(data));
</script>

如果我为“data-form-data”属性设置动态值,则上传失败并出现错误:“使用未签名上传时,上传预设必须指定上传预设”

请注意,我使用对云服务器的 ajax 异步调用来设置动态数据值以获取凭据。

4

2 回答 2

1

为了避免这个问题并从头开始,我使用了以下方法:

<script src="//widget.cloudinary.com/global/all.js" type="text/javascript"></script>
<script>
    cloudinary.setCloudName('YOUR_CLOUD_NAME');
    cloudinary.openUploadWidget({upload_preset: 'your_unsigned_preset_name'}, function(error, result) {//...
    })
</script>
于 2016-01-24T23:14:29.167 回答
0

调用修改cloudinary-fileupload字段的参数$(...).attr('data-form-data', json)不起作用,因为初始化后不会重新读取该属性的值,所以该调用没有效果。可能的后果是 401 Unauthorized(例如由于 Unknown API Key)错误和使用的原始参数。

更新上传参数的正确方法是调用$(...).fileupload({formData: data})where data是参数哈希(不是 JSON 序列化)。

于 2014-07-01T08:22:57.387 回答