强制下载响应是否需要由 angular 处理才能工作?(从 Angular $http.post 调用请求下载)



在将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>中提供actionmethod并且没有拦截表单提交事件 ( ng-submit ) 或提交按钮事件 ( ng-click ),表单将通过默认浏览器进程提交。

由于它是强制下载,因此在当前页面的状态中不应更改任何其他内容

最新更新