post有兩種上傳方式,這裡只列舉上傳附件的方式(這種請求方式支援檔案或檔案&普通引數或普通引數)即:
content-type = multipart/form-data;
該種型別有固定的引數拼接格式
普通引數
--boundry\r\n
content-disposition: form-data; name=\"%@\"\r\n
\r\n
value
\r\n
檔案引數
--boundry\r\n
content-disposition:form-data; name=\"%@
\"; filename=\"%@\"\r\ncontent-type:%@\r\n
\r\n
data
\r\n
引數結尾
--boundry
--\r\n 其中
name 即為表單請求字段(服務端要的引數字段),filename為儲存在服務端的檔案名字,content-type為檔案型別(image/png 或者
video/mpeg4等等),具體可以檢視content-type參照表
這裡著重說下即使服務端要引數是int型別,這裡也必須普通引數也必須是字串物件
#define test_form_boundary @
"test1234"
#define bmencode(str) [str datausingencoding:nsutf8stringencoding] -(
void
)sendpost:(
nsstring
*)urlstr paramater:(
nsdictionary
*)para data:(
nsdata
*)data name:(
nsstring
*)filename andcontenttype:(
nsstring
*)cotentype ];
/* 普通引數*/
/* 檔案引數*/
if(data&&data.
length
>0)
/* 檔案引數*/
//尾部的分隔符
//設定上傳資料的長度及格式
建立會話
nsurlsession
*session = [
nsurlsession
sharedsession];
nsurlsessionuploadtask
*updatatask = [session
uploadtaskwithrequest
:request
fromdata
:datam
completionhandler
:^(nsdata
*_nullable
data,
nsurlresponse
*_nullable
response,
nserror
* _nullable
error)
else
}];[updatatask
resume];
}
目前問題 plupload上傳帶引數到後台
目前問題 plupload上傳帶引數到後台,遲遲沒有解決!昨晚到23點多終於完成了!直接上 var uploader new plupload.uploader uploader.init 初始化 繫結檔案新增進佇列事件 uploader.bind filesadded function uploa...
iOS面試題文案及答案附件
類別中原則上只能增加方法 能新增屬性的的原因只是通過runtime能新增屬性的的原因只是通過runtime的objc setassociatedobject和objc getassociatedobject方法解決無setter getter的問題而已 類擴充套件不僅可以增加方法,還可以增加例項變數...
自定義表單中多附件上傳控制項的實現方案
多附件上傳的功能,在我們開發系統的時候經常會需要,客戶的需求也很複雜,如果每次的附件上傳都從最基本的html元素 type file來做的話,還是比較費時費工。如果我們把附件上傳的功能封裝成乙個控制項,在需要上傳的頁面中直接拉下來控制項,通過設定屬性就能完成多附件上傳,這樣是最方便和快捷的。封裝多附...