我是新的HTML5和Ajax,我很想知道这些技术是否可以编写一个允许用户上传图像的服务,例如在后台,以便他们可以继续浏览同一网站上的不同页面。上传正在进行中?
答案 0 :(得分:3)
XHR2 AJAX请求可以提交二进制数据,如图像:
但是,更改地址栏(windows.location)将在加载新页面时中断上传。你可以通过AJAX加载页面并使用History API来解决这个问题:
https://developer.mozilla.org/en-US/docs/DOM/Manipulating_the_browser_history
您可以选择使用<canvas>
在客户端调整图像大小以减少所需的带宽和服务器负载
Resizing an image in an HTML5 canvas
此外,如果您触摸<canvas>
中的图片,则可能需要保留JPEG元数据,例如旋转和GPS坐标,
https://github.com/miohtama/Krusovice/blob/master/src/tools/resizer.js