我正在尝试通过烧瓶获取POST请求。 它从.py文档中获取数据(工作正常。正在以我想要的方式在表中显示) 但不要让我发布它。我总是会收到错误:
方法不允许 所请求的URL不允许使用该方法。
控制台:“ POST / HTTP / 1.1” 405-
我的JavaScript代码:
function addUserList() {
var xhttp = new XMLHttpRequest();
xhttp.open("POST", '/api/users', true);
xhttp.onload = function() {
if (xhttp.readyState == 4 && xhttp.status == 201) {
alert("user created")
}
else{alert("Error")
}
};
data = {fname: "Henry", lname: "Ford"}
stringdata = stringify(data)
console.log("function add user triggered")
xhttp.send(stringdata);
}
和我的主要app.py:
def getUserList():
if request.method =='GET':
return jsonify({"data": userlist})
if request.method =='POST':
repobj = json.loads(request.data)
user = repobj['fname']
user1 = repobj['lname']
newid = userlist[-1]["id"]
newuser = {"id":newid +1,
"avatar":"https://s3.amazonaws.com/uifaces/faces/twitter/calebogden/128.jpg",
"first_name":user,
"last_name":user1,
"email":"george.bluth@reqres.in",
"job": "Doctor"}
userlist.append(newuser)
resp = make_response("", 201)
return resp
现在我正在尝试对fname和lname进行硬编码,以查看其是否正常工作。
我是Flask的新手!
谢谢!
答案 0 :(得分:0)
在定义函数
fonction_principale = function(alpha_1,alpha_2,alpha_3,alpha_4,alpha_5){
###########
#PREREQUIS#
###########
source("C:/Users/François/Desktop/CODE/code_blocs/bloc_prerequis.R")
######################
#BOUCLES RATIO ET NUM#
######################
source("C:/Users/François/Desktop/CODE/code_blocs/bloc_boucles.R")
########################################
#FUSION DES 3 RESULTATS : TABLEAU FINAL#
########################################
source("C:/Users/François/Desktop/CODE/code_blocs/bloc_fusion.R")
########################
#CALCUL DE L'INDICATEUR#
########################
#on initialise iii à 0
source("C:/Users/François/Desktop/CODE/initialisation/iii.R")
#on charge la fonction calcul_indic
source("C:/Users/François/Desktop/CODE/fonctions/calcul_indic.R")
#on charge la valeur des alphas (poids)
#source("C:/Users/François/Desktop/CODE/initialisation/alphas.R")
alpha1 = alpha_1
alpha2 = alpha_2
alpha3 = alpha_3
alpha4 = alpha_4
alpha5 = alpha_5
#création de la variable indicateur et injection des données dans le tableau
#et affichage du tableau final avec la variable indicateur
#source("C:/Users/François/Desktop/CODE/code_blocs/bloc_injection.R")
for(iii in 1:dim(tableau_final)[1]){
tableau_final$indicateur[iii] = calcul_indic(tableau_final,alpha1,alpha2,alpha3,alpha4,alpha5)
}
##############################################################
#FONCTION COMPARAISON DES MODELES SUR LA BASE DE L'INDICATEUR#
##############################################################
#on charge la fonction de comparaison des modeles
#source("C:/Users/François/Desktop/CODE/fonctions/compar_model.R")
compar_model = function(Tableau_gen){
indic_min <- select(Tableau_gen, type_modele, modele, indicateur)
indic_min = filter(indic_min, indicateur == min(indicateur))
return(indic_min)
}
#on teste la fonction sur le tableau final (resultats des 3 modeles)
compar_model(tableau_final)
return(compar_model(tableau_final))
}
fonction_principale(0.2,0.2,0.4,0.6,0.8)
的app.py中,必须在括号中添加:getUserList
。 Flask自动处理方法methods="GET", "POST"
,但是如果您明确地说该函数可以处理方法,则只能使用方法GET
。它将最终显示为:POST