Javascript 405:不允许使用方法(对Flask的AJAX查询)
我已经看到了很多关于这个的问题,我无法调试它 我的ajax查询如下:Javascript 405:不允许使用方法(对Flask的AJAX查询),javascript,jquery,python,ajax,flask,Javascript,Jquery,Python,Ajax,Flask,我已经看到了很多关于这个的问题,我无法调试它 我的ajax查询如下: function add_to_pipeline(){ // console.log("In function"); var mySelect = document.getElementById("select_list"); var operator = mySelect.options[ mySelect.selectedIndex ].label;
function add_to_pipeline(){
// console.log("In function");
var mySelect = document.getElementById("select_list");
var operator = mySelect.options[ mySelect.selectedIndex ].label;
// console.log(mySelect.options[ mySelect.selectedIndex ].value);
$("#pipeline_list").append('<li> '+ operator +'</li>');
submit_to_server();
}
function submit_to_server(){
var img = new FormData();
img.append('file',$("#preview_list li:last-child")[0]);
// Debugging statement
//$("#preview_list li:last-child").dialog();
$.ajax({
type : "POST",
url : "/_process",
data : img,
contentType: false,
cache: false,
processData: false,
success: function(data) {
alert(data['result']);
}
});
}
我正在将
的最后一个
元素作为输入文件(图像)并通过AJAX发送。您需要指定视图中允许的方法(默认为GET),例如:
@app.route('/_process', methods=['GET', 'POST'])
我认为在你的情况下,你不需要GET,所以简单地说:
@app.route('/_process', methods=['POST'])
def process():
img = request.files['file']
return jsonify(result="Image received")
以下是文档中的示例:
我希望这会在我的记忆中燃烧。
@app.route('/_process', methods=['GET', 'POST'])
@app.route('/_process', methods=['POST'])
def process():
img = request.files['file']
return jsonify(result="Image received")