日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

IOS--工作总结--post上传文件(以流的方式上传)

發布時間:2024/4/14 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 IOS--工作总结--post上传文件(以流的方式上传) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.添加協議

  <NSURLConnectionDelegate>

2.創建

  @property (nonatomic,retain) NSURLConnection* aSynConnection;

  @property (nonatomic,retain) NSInputStream *inputStreamForFile;

  @property (nonatomic,retain) NSString *localFilePath;

3.創建請求  

   ?NSString *path=[[NSBundle mainBundle] pathForResource:str ofType:@"bin"];// 獲取需要上傳的文件的路徑

 ?  NSString *urlStr = [NSString stringWithFormat:@"http://%@/device/bin/upgrade/?bin=%@.bin",UrlStr,userBin];

 ?  urlStr = [urlStr stringByAddingPercentEscapesUsingEncoding: NSUTF8StringEncoding];

? ?   NSURL *serverURL=[NSURL URLWithString:urlStr];//上傳的服務器地址

?   ? self.inputStreamForFile = [NSInputStream inputStreamWithFileAtPath:path];

?   ? NSNumber *contentLength = (NSNumber *) [[[NSFileManager defaultManager] attributesOfItemAtPath:path error:NULL] objectForKey:NSFileSize];

?   ? NSMutableURLRequest *request;  

? ?   request = [NSMutableURLRequest requestWithURL:serverURL];

? ?   [request setHTTPMethod:@"POST"];

?   ? [request setHTTPBodyStream:self.inputStreamForFile];

? ?   [request setValue:@"application/octet-stream" forHTTPHeaderField:@"Content-Type"];//這里設置文件上傳的協議 ?當前協議時以任何流形式上傳

? ?   [request setValue:[contentLength description] forHTTPHeaderField:@"Content-Length"];  

? ?   self.aSynConnection = [NSURLConnection connectionWithRequest:request delegate:self];//添加代理方法

4.實現代理方法

    - (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)aResponse{

? ?     NSLog(@"請求成功!");

? ?     NSHTTPURLResponse * httpResponse;

? ?     httpResponse = (NSHTTPURLResponse *)aResponse;

? ?     if ((httpResponse.statusCode / 100) != 2) {

? ? ? ?       NSLog(@"保存失敗");??

    ? ? } else {

  ? ? ?     ? NSLog(@"保存成功");  

  ? ? ? ?     [self UpDataTheDeviceAndReset];?//上傳成功之后執行你想進行的操作

    ? ? }

   }

?

?

轉載于:https://www.cnblogs.com/paocai2015/p/5072336.html

超強干貨來襲 云風專訪:近40年碼齡,通宵達旦的技術人生

總結

以上是生活随笔為你收集整理的IOS--工作总结--post上传文件(以流的方式上传)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。