作者tkdmaf (皮皮快跑)
看板PHP
标题Re: [请益] 批次上传 API
时间Sun Apr 12 11:52:41 2015
※ 引述《OpenGoodHate (什麽东西什麽东西)》之铭言:
: 如题
: 目前用PHP 在撰写API
: 想给行动平台(Android / iOS)批次上传表单(含照片的表单)
: 如果纯表单的话当然就是编成JSON 上传就好
: 可是因为里面还有夹照片
: 目前想的是把照片先zip 起来,然後表单里有照片的档名
: 接着一次用POST 上传,Server 接收完之後再unzip把照片放到资料夹中
: 请问还有没有其他的写法呢
: 然後有什麽限制要注意
: 目前想到的就只有档案太大上传有可能超时的问题
: set_time_limit(0)的话不知道会不会被client咬死导致一条行程就占用着不会被放掉
: 然後内存加大如果我上传的照片超过内存设定量会不会爆炸
: 还是这种情况其实要client 自己写回圈来call 就好??
: 不知道要怎麽样实做会是比较好的选择
我之前写过IOS的上传图片。
事实上我觉得不用把问题想太复杂。
android/ios都有相对应的http request套件。
你可以当成他就是<form method="post" encrypt="multipart/form-data"></form>
唯一的难点就是你後面说的上传太大的问题。
关於这一点,如果你打算上传「原图」其实问题可能还没那麽大。
我之前的问题是:上传的图,php还要各自转成h720、h480、h240(h = 高)
转图才是真正耗记忆体资源的时候。
那时就发生了ipad mini上传正常,iphone5s上传异常的情形。
(前者是500万画素,後者是800万画素)
总的来说,你可以自己先处理好php的表单上传模式。
统一一个固定接受的介面。
其他的传输全按照那个介面的规定走。
你如果担心set_time_limit(0)的问题。
那你应该反过来想另外一个问题:
谁会希望你上传到等待程式完成要卡画面超过1分钟……
可能卡个10秒就已经受不了了。
我之前其实是有用ignore_user_abort(true)让上传後的缩图留在背景继续执行。
不知道各位大德是不是也有其他不错的方法呢?
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 123.204.108.86
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/PHP/M.1428810764.A.5A8.html
1F:推 a60301: 弄一个 service 跑转档吧 04/12 14:26
2F:推 OpenGoodHate: 应该租不起够力的伺服器…只能先档着用了 04/13 17:28
3F:→ MOONRAKER: 上次有写过在前端裁图resize才上传 不晓得canvas可不可 04/13 18:23
4F:→ MOONRAKER: 以藏起来 这样user就不知道我在前端偷缩图 XP 04/13 18:24
5F:→ mmis1000: 可以啊,canvas就算不append到dom也能运算阿 04/13 21:15
6F:→ MOONRAKER: 那太好了 :P 04/14 02:09