Я использую веб-пакет для моего приложения рельсов.А вот мои js и контроллер:
const uppy = Uppy()
.use(Transloadit, {
params: {
auth: {
// To avoid tampering use signatures:
// https://transloadit.com/docs/api/#authentication
key: '903df5e32624447a9798d71db0d3b2cf'
},
template_id: '3526677204bf44fba43df0f6b68c82ee'
},
waitForEncoding: true
})
.use(Dashboard, {
inline: true,
target: '#drag-drop-area'
})
uppy.on('transloadit:result', (stepName, result) => {
//Pass result to my controller and save it to database
Rails.ajax({
url: "/add_images_to_stray",
type: "POST",
data: result,
success: function(data) {
console.log(data);
}
});
}
)
Это действие моего контроллера:
def add_images_to_stray
puts "HELLO WORLD"
end
Я получил эту ошибку с кодами выше:
POST http://localhost:3000/add_images_to_stray 401 (Unauthorized)
СледовательноЯ обновил коды AJAX следующим образом:
Rails.ajax({
url: "/add_images_to_stray",
type: "POST",
beforeSend: function (xhr) {
xhr.setRequestHeader('X-CSRF-Token', token)
},
data: result,
success: function(data) {
console.log(data);
}
});
Но ничего не произошло, кажется, / add_images_to_stray не был вызван.