我使用Java构建图片上传标记:
Map options = ObjectUtils.asMap("resource_type", "auto");
options.put("callback", "http://localhost:8080/cloudinary_cors.html");
Map htmlOptions = null;
String html = cloudinary.uploader().imageUploadTag("image_id", options, htmlOptions);
将此String放入Model属性并在页面上显示。看起来像按钮"Choose file"。
选择了一些图片, jquery.fileupload 尝试将此图片发送到Cloudinary。
我选择状态代码:400错误请求并回复:
error: {message: "Upload preset must be specified when using unsigned upload"}
我的所有设置都是正确的,我可以从服务器端发送图片,使用以下代码:
Map uploadResult = cloudinary.uploader().upload("image.jpg", ObjectUtils.emptyMap())
但我无法从客户端发送文件。
网页代码:
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
<script th:src="@{/js/common/jquery-1.11.3.min.js}" type="text/javascript"/>
<script th:src="@{/js/cloudinary/jquery.ui.widget.js}" type="text/javascript"/>
<script th:src="@{/js/cloudinary/jquery.iframe-transport.js}" type="text/javascript"/>
<script th:src="@{/js/cloudinary/jquery.fileupload.js}" type="text/javascript"/>
<script th:src="@{/js/cloudinary/jquery.cloudinary.js}" type="text/javascript"/>
</head>
<body>
<span th:utext="${cloudyURL}" th:remove="tag"></span>
<!-- config CloudinaryApi -->
<script th:inline="javascript">
$.cloudinary.config({"cloud_name":"CLOUDNAME", "api_key":"APIKEY"});
</script>
</body>
</html>
我阅读了所有Cloudinary手册,github问题,stackoverflow答案,但无法强制直接上传。 请帮助我,处理这个问题。
答案 0 :(得分:0)
Upload preset must be specified
错误响应通常意味着签名不会作为上传选项的一部分传递。您可以在实时网页上分享网址吗?
您是否也可以分享如何生成输入字段的演示(即,在“开发者工具”下显示它?)
如果隐私是个问题,请随时联系Cloudinary的支持团队。
另外,您可以查看示例项目(https://github.com/cloudinary/cloudinary_java/tree/master/samples)