Получить JSON в бутылке Python

Я пытаюсь сделать сообщение в формате JSON на моем сервере бутылок.

from bottle import request, route, run
@route('/feedback', method='POST')
def feedback():
    data = request.json
    print data

run(host='localhost',port=8080)

На стороне клиента у меня есть

$('#user_feedback').submit(function() {
  var feedback = {"id": 1}
  $.ajax({
     type: "POST",
     url: "http://localhost:8080/feedback",
     data: feedback
 });
 return false;
});

Я возвращаю false здесь, потому что я не хочу, чтобы страница была перенаправлена.

Тем не менее data Я получил в моем бутылке сервера всегда None когда распечатан. Пожалуйста помоги. Спасибо.

1 ответ

Решение

request.json ожидает, что тип содержимого запроса будет application/json, Таким образом, чтобы это работало, вы должны установить contentType собственность вашего запроса application/json и упорядочить ваши данные:

$.ajax({ 
    type:"POST",
    contentType: "application/json",
    url:"/feedback",
    data: JSON.stringify(feedback)
});
Другие вопросы по тегам