0
jsonからフラスコにいくつかのJsonデータを渡したいと思います。私はいくつかのフォームの値を取り、それらをフラスコに渡すadd userメソッドを持っています。jsonからフラスコにjsonデータを渡す
function kullaniciEkle(event) // add a user
{
event.preventDefault();
var hataSayisi = 0;
$('#addUser input').each(function (index, val) {
if ($(this).val() === '') {
hataSayisi++;
}
});
console.log("Number of errors: ", hataSayisi);
if (hataSayisi === 0) {
var yeniKullanici = {
'kullanıcıAdı' : $('#kullaniciEkle fieldset input#girisIsim').val(),
'eposta' : $('#kullaniciEkle fieldset input#girisEposta').val(),
'tamİsim' : $('#kullaniciEkle fieldset input#girisTamIsim').val(),
'yaş': $('#kullaniciEkle fieldset input#girisYas').val(),
'yer' : $('#kullaniciEkle fieldset input#girisSehir').val(),
'cinsiyet' : $('#kullaniciEkle fieldset input#girisCinsiyet').val()
}
console.log(yeniKullanici);
console.log(JSON.stringify(yeniKullanici));
$.ajax({
type: 'POST',
contentType: "application/json; charset=utf-8",
data: JSON.stringify(yeniKullanici),
url: '/add',
success: function(data){
console.log("Are we here?");
$('#kullaniciEkle fieldset input').val('');
},
error: function(xhr, textStatus, error){
alert(xhr.responseText);
},
dataType: "json"
});
} else {
alert("Please fill in all form fields");
}
}
そして、フラスコ内の追加方法は、そのようなものです。
@app.route('/add', methods=['POST'])
def addUser():
if request.method == "POST":
content = request.get_json(silent=True)
print (content)
return 'Hi there'
フラスコからjsonデータを取得する可能性があります。しかし、jQuery側では、エラー部分が実行されると思います。 addUser()関数がこの値を返した場合、または返された値が空の場合は空の警告メッセージを返した場合、警告メッセージ 'Hi there'が表示されるためです。