zoukankan      html  css  js  c++  java
  • ios23-文件上传

    1.上传图片





    3.

    //

    //  ios23_uploadViewController.h

    //  ios23-upload

    //

    //  Created by  on 13-6-17.

    //  Copyright 2013 __MyCompanyName__. All rights reserved.

    //


    #import <UIKit/UIKit.h>

    #import "ASIHTTPRequest.h"


    @interface ios23_uploadViewController : UIViewController<ASIHTTPRequestDelegate>

    -(IBAction)upload;


    @end


    -------------------------------------------------

    //

    //  ios23_uploadViewController.m

    //  ios23-upload

    //

    //  Created by  on 13-6-17.

    //  Copyright 2013 __MyCompanyName__. All rights reserved.

    //


    #import "ios23_uploadViewController.h"

    #import "ASIHTTPRequest.h"

    #import "ASIFormDataRequest.h"


    @implementation ios23_uploadViewController


    - (void)didReceiveMemoryWarning

    {

        [superdidReceiveMemoryWarning];

        // Release any cached data, images, etc that aren't in use.

    }


    #pragma mark - View lifecycle

    -(void)upload{

        //定义请求的URL地址:

        NSString *uploadURL = @"http://172.22.65.2/2012/upload.php";

        UIImage *im = [UIImage imageNamed:@"csdn"];//通过path图片路径获取图片

        NSData *data = UIImagePNGRepresentation(im);//获取图片数据

        /*

         ios中获取图片的方法有两种,一种是UIImageJPEGRepresentation ,一种是UIImagePNGRepresentation前者获取到图片的数据量要比后者的小很多。。

         */

        NSURL *url = [NSURL URLWithString:uploadURL];

        

        ASIFormDataRequest *aRequest = [[ASIFormDataRequestalloc] initWithURL:url];

        [aRequest setDelegate:self];//代理

        [aRequest setRequestMethod:@"POST"];

        [aRequest addData:data withFileName:@"test.png"andContentType:@"image/png"forKey:@"file"];

        //forKey:@"file"   

        [aRequest addRequestHeader:@"Content-Type"value:@"binary/octet-stream"];//这里的value需与服务器端一致

        

        [aRequest startAsynchronous];//开始。异步

        [aRequest setDidFinishSelector:@selector(headPortraitSuccess)];//当成功后会自动触发 headPortraitSuccess 方法

        [aRequest setDidFailSelector:@selector(headPortraitFail)];//如果失败会自动触发 headPortraitFail 方法

      //  [aRequest release];

        


    }

    -(void)headPortraitSuccess{

        

        NSLog(@"上传成功!");

        

    }


    -(void)headPortraitFail{

        

        

        NSLog(@"上传失败!");

        

    }


    //开始request请求

    - (void)requestStarted:(ASIHTTPRequest *)request{

        

        

        NSLog(@"开始请求!");

        

    }


    - (void)viewDidLoad

    {

        [superviewDidLoad];

    // Do any additional setup after loading the view, typically from a nib.

    }


    - (void)viewDidUnload

    {

        [superviewDidUnload];

        // Release any retained subviews of the main view.

        // e.g. self.myOutlet = nil;

    }


    - (void)viewWillAppear:(BOOL)animated

    {

        [super viewWillAppear:animated];

    }


    - (void)viewDidAppear:(BOOL)animated

    {

        [super viewDidAppear:animated];

    }


    - (void)viewWillDisappear:(BOOL)animated

    {

    [superviewWillDisappear:animated];

    }


    - (void)viewDidDisappear:(BOOL)animated

    {

    [superviewDidDisappear:animated];

    }


    - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation

    {

        // Return YES for supported orientations

        return (interfaceOrientation != UIInterfaceOrientationPortraitUpsideDown);

    }


    @end



  • 相关阅读:
    python list介绍
    python unittest模块
    python 贪婪算法
    python 动态规划:背包问题
    汇编语言 基础知识(王爽)
    python 迪克斯特拉(Dijkstra)
    python 广度优先查找 (最短路径)
    Python 快速排序
    python 分而治之 找零数量 最小组合
    移动端的头部标签和 meta
  • 原文地址:https://www.cnblogs.com/snake-hand/p/3141035.html
Copyright © 2011-2022 走看看