|
0
|
| chernevik · 技术社区 · 16 年前 |
|
|
1
3
尽管您可以安排视图检查请求数据,以决定响应应该是一个半成品还是纯HTML,但我并不推荐这样做。将Ajax请求处理程序放在一个单独的URL结构中,例如,所有常规的HTML视图都有类似于/foo/bar的URL,对相同信息的相应API调用将是/ajax/foo/bar。 由于大多数视图都会检查请求数据,然后进行一些处理,然后创建一个python字典并将其传递给模板引擎,所以您可以考虑出一些常见的部分,以使这变得更加容易。前几个步骤可以是一种只返回Python字典的通用函数,然后通过将处理程序函数包装在模板呈现器或JSON编码器中来组成实际响应。
我通常的工作流程是最初假设客户机没有javascript(这仍然是一个有效的假设;许多移动浏览器没有JS),并将应用程序实现为静态的。
同样,从服务器获取数据也被重新设计,以响应简洁的JSON文档,并将其处理到客户机的页面中。这也将是一个单独的url/django视图,作为该资源的相应纯HTML。 |
|
|
2
3
|
|
|
3
0
仅供参考,这不是一个答案……但它可能有助于你以不同的方式思考 这就是我遇到的问题… Google App Engine + jQuery Ajax = 405 Method Not Allowed . 所以基本上,我可以使用所概述的代码来工作,然后我就不能发出Ajax请求:(。 |