在将AngularJS添加到我的前端之前,我可以轻松地从我的Django服务器下载zip文件:
def myZipDownloadingView(request):
downloadableZip = open('myZip.zip','r')
response = HttpResponse(downloadableZip, content_type='application/force-download')
response['Content-Disposition'] = 'attachment; filename="myZip.zip"'
return response
现在,Angular 调用此视图以请求下载,并且浏览器不再下载该文件。我的角度 $http.post() 调用是否需要处理从视图发送的响应?这不能简单地与:
$http.post("myZipDownloadingView");
如果您在<form>
中提供action
和method
并且没有拦截表单提交事件 ( ng-submit
) 或提交按钮事件 ( ng-click
),表单将通过默认浏览器进程提交。
由于它是强制下载,因此在当前页面的状态中不应更改任何其他内容