Files
tripwithbonus/static/v2/js/service/api.js
2025-01-10 21:32:17 +03:00

37 lines
1.1 KiB
JavaScript

class api {
constructor(props) {
this.url = props.url;
this.data = props.data;
this.data_type = props.data_type;
this.type = props.type || 'POST';
this.success_callback = props.success;
this.error_callback = props.error;
}
ajaxRequest (){
if (!this.url) return;
let class_data = this;
let request_data = {
headers: {"X-CSRFToken": $('input[name=csrfmiddlewaretoken]').val()},
url: this.url,
type: this.type,
data: this.data,
success: function (data) {
if (class_data.success_callback) class_data.success_callback(data)
}, error: function (data) {
if (class_data.error_callback) class_data.error_callback(data)
}
}
if (this.data_type === 'formData'){
request_data.processData = false
request_data.contentType = false
}
if (this.data_type === 'json'){
request_data.data = JSON.stringify(this.data)
}
$.ajax(request_data);
}
}