Django возвращает JSON и HTML в зависимости от клиентского Python - PullRequest
3 голосов
/ 13 февраля 2012

У меня есть приложение django, которое имеет шаблоны html, а также у меня есть python api для командной строки, который может выполнять запросы GET и POST к приложению django на сервере.API может в значительной степени делать все, что может делать приложение django.Как сделать так, чтобы при доступе к приложению django через браузер оно возвращало html, но когда я получаю доступ к нему через API, оно возвращает json?

Где мне нужно поместить json и какие изменения я должен сделатьнужно сделать, чтобы мое приложение?

Спасибо

1 Ответ

7 голосов
/ 13 февраля 2012

Используйте разные URL для версий JSON и HTML.

Я предлагаю, чтобы ваша версия JSON была доступна по URL-адресу, например r'normal/api(?P<json_flag>/json/?)$', и чтобы в вашем представлении был параметр для получения флага json.Затем вы можете служить соответствующим образом.

Естественно, ваше представление должно будет использовать другую логику для генерации HTML и JSON.Я настоятельно рекомендую вам использовать модуль json вместо шаблона для генерации JSON.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...