Django根据客户端python返回json和html

我有一个
django应用程序,它有html模板,我还有一个命令行
python api,可以对服务器上的django应用程序执行GET和POST请求. api几乎可以完成django应用程序可以执行的所有操作.我怎么做到当我通过浏览器访问django应用程序时它返回html但是当我通过api访问它时它返回json?

我将在哪里放置json以及我必须对我的应用程序进行哪些更改?

谢谢

最佳答案 对
JSON和HTML版本使用不同的URL.

我建议您的JSON版本可以在r’normal / api(?P< json_flag> / json /?)$’等网址上获得,并在视图中有一个参数来接收json标志.然后你可以适当地服务.

当然,您的视图必须使用不同的逻辑来生成HTML和JSON.我强烈建议您使用json模块而不是模板来生成JSON.

点赞