我不知道如何使用 Ruby on rails 在 AJAX 中保存图像,这是我在 github 中的存储库,github.com/luis77/EdiTor22 请检查一下,我已经尝试了 2 天,但我不知道出了什么问题. 例如,检查视图附件/新这里是带有 ajax 代码的 javascript 代码:
<script>
var canvas = document.createElement('canvas');
var context = canvas.getContext('2d');
var centerX = canvas.width / 2;
var centerY = canvas.height / 2;
var radius = 70;
context.beginPath();
context.arc(centerX, centerY, radius, 0, 2 * Math.PI, false);
context.fillStyle = 'green';
context.fill();
context.lineWidth = 5;
context.strokeStyle = '#003300';
context.stroke();
document.body.appendChild(canvas)
var dataURL = canvas.toDataURL('image/png');
// Convert dataURL to Blob object
function dataURLtoBlob(dataURL) {
// Decode the dataURL
var binary = atob(dataURL.split(',')[1]);
// Create 8-bit unsigned array
var array = [];
for(var i = 0; i < binary.length; i++) {
array.push(binary.charCodeAt(i));
}
// Return our Blob object
return new Blob([new Uint8Array(array)], {type: 'image/png'});
}
// Get our file
var file= dataURLtoBlob(dataURL);
// Create new form data
var fd = new FormData();
// Append our Canvas image file to the form data
fd.append("image", file);
// And send it
$.ajax({
url: "/attachments/change2",
type: "POST",
data: fd,
processData: false,
contentType: false,
});
</script>
它在路线中指定:
post "attachments/change2"
以及控制器中的方法,
但不会保存,我需要有关此代码的帮助,请帮助。