//
// ASIHTTPRequest.h
//
// Created by Ben Copsey on 04/10/2007.
// Copyright 2007-2010 All-Seeing Interactive. All rights reserved.
//
// A guide to the main features is available at:
// http://allseeing-i.com/ASIHTTPRequest
//
// Portions are based on the ImageClient example from Apple:
// See: http://developer.apple.com/samplecode/ImageClient/listing37.html
#import <Foundation/Foundation.h>
#if TARGET_OS_IPHONE
#import <CFNetwork/CFNetwork.h>
#endif
#import <stdio.h>
#import "ASIHTTPRequestConfig.h"
#import "ASIHTTPRequestDelegate.h"
#import "ASIProgressDelegate.h"
#import "ASICacheDelegate.h"
extern NSString *ASIHTTPRequestVersion;
// Make targeting different platforms more reliable
// See: http://www.blumtnwerx.com/blog/2009/06/cross-sdk-code-hygiene-in-xcode/
#ifndef __IPHONE_3_2
#define __IPHONE_3_2 30200
#endif
#ifndef __IPHONE_4_0
#define __IPHONE_4_0 40000
#endif
#ifndef __MAC_10_5
#define __MAC_10_5 1050
#endif
#ifndef __MAC_10_6
#define __MAC_10_6 1060
#endif
typedef enum _ASIAuthenticationState {
ASINoAuthenticationNeededYet = 0,
ASIHTTPAuthenticationNeeded = 1,
ASIProxyAuthenticationNeeded = 2
} ASIAuthenticationState;
typedef enum _ASINetworkErrorType {
ASIConnectionFailureErrorType = 1,
ASIRequestTimedOutErrorType = 2,
ASIAuthenticationErrorType = 3,
ASIRequestCancelledErrorType = 4,
ASIUnableToCreateRequestErrorType = 5,
ASIInternalErrorWhileBuildingRequestType = 6,
ASIInternalErrorWhileApplyingCredentialsType = 7,
ASIFileManagementError = 8,
ASITooMuchRedirectionErrorType = 9,
ASIUnhandledExceptionError = 10
} ASINetworkErrorType;
// The error domain that all errors generated by ASIHTTPRequest use
extern NSString* const NetworkRequestErrorDomain;
// You can use this number to throttle upload and download bandwidth in iPhone OS apps send or receive a large amount of data
// This may help apps that might otherwise be rejected for inclusion into the app store for using excessive bandwidth
// This number is not official, as far as I know there is no officially documented bandwidth limit
extern unsigned long const ASIWWANBandwidthThrottleAmount;
@interface ASIHTTPRequest : NSOperation <NSCopying> {
// The url for this operation, should include GET params in the query string where appropriate
NSURL *url;
// Will always contain the original url used for making the request (the value of url can change when a request is redirected)
NSURL *originalURL;
// The delegate, you need to manage setting and talking to your delegate in your subclasses
id <ASIHTTPRequestDelegate> delegate;
// Another delegate that is also notified of request status changes and progress updates
// Generally, you won't use this directly, but ASINetworkQueue sets itself as the queue so it can proxy updates to its own delegates
id <ASIHTTPRequestDelegate, ASIProgressDelegate> queue;
// HTTP method to use (GET / POST / PUT / DELETE / HEAD). Defaults to GET
NSString *requestMethod;
// Request body - only used when the whole body is stored in memory (shouldStreamPostDataFromDisk is false)
NSMutableData *postBody;
// gzipped request body used when shouldCompressRequestBody is YES
NSData *compressedPostBody;
// When true, post body will be streamed from a file on disk, rather than loaded into memory at once (useful for large uploads)
// Automatically set to true in ASIFormDataRequests when using setFile:forKey:
BOOL shouldStreamPostDataFromDisk;
// Path to file used to store post body (when shouldStreamPostDataFromDisk is true)
// You can set this yourself - useful if you want to PUT a file from local disk
NSString *postBodyFilePath;
// Path to a temporary file used to store a deflated post body (when shouldCompressPostBody is YES)
NSString *compressedPostBodyFilePath;
// Set to true when ASIHTTPRequest automatically created a temporary file containing the request body (when true, the file at postBodyFilePath will be deleted at the end of the request)
BOOL didCreateTemporaryPostDataFile;
// Used when writing to the post body when shouldStreamPostDataFromDisk is true (via appendPostData: or appendPostDataFromFile:)
NSOutputStream *postBodyWriteStream;
// Used for reading from the post body when sending the request
NSInputStream *postBodyReadStream;
// Dictionary for custom HTTP request headers
NSMutableDictionary *requestHeaders;
// Set to YES when the request header dictionary has been populated, used to prevent this happening more than once
BOOL haveBuiltRequestHeaders;
// Will be populated with HTTP response headers from the server
NSDictionary *responseHeaders;
// Can be used to manually insert cookie headers to a request, but it's more likely that sessionCookies will do this for you
NSMutableArray *requestCookies;
// Will be populated with cookies
NSArray *responseCookies;
// If use useCookiePersistence is true, network requests will present valid cookies from previous requests
BOOL useCookiePersistence;
// If useKeychainPersistence is true, network requests will attempt to read credentials from the keychain, and will save them in the keychain when they are successfully presented
BOOL useKeychainPersistence;
// If useSessionPersistence is true, network requests will save credentials and reuse for the duration of the session (until clearSession is called)
BOOL useSessionPersistence;
// If allowCompressedResponse is true, requests will inform the server they can accept compressed data, and will automatically decompress gzipped responses. Default is true.
BOOL allowCompressedResponse;
// If shouldCompressRequestBody is true, the request body will be gzipped. Default is false.
// You will probably need to enable this feature on your webserver to make this work. Tested with apache only.
BOOL shouldCompressRequestBody;
// When downloadDestinationPath is set, the result of this request will be downloaded to the file at this location
// If downloadDestinationPath is not set, download data will be stored in memory
NSString *downloadDestinationPath;
//The location that files will be downloaded to. Once a download is complete, files will be decompressed (if necessary) and moved to downloadDestinationPath
NSString *temporaryFileDownloadPath;
// Used for writing data to a file when downloadDestinationPath is set
NSOutputStream *fileDownloadOutputStream;
// When the request fails or completes successfully, complete will be true
BOOL complete;
// If an error occurs, error will contain an NSError
// If error code is = ASIConnectionFailureErrorType (1, Connection failure occurred) - inspect [[error userInfo] objectForKey:NSUnderlyingErrorKey] for more information
NSError *error;
// Username and password used for authentication
NSString *username;
NSString *password;
// Domain used for NTLM authentication
NSString *domain;
// Username and password used for proxy authentication
NSString *proxyUsername;
NSString *proxyPassword;
// Domain used for NTLM proxy authentication
NSString *proxyDomain;
// Delegate for displaying upload progress (usually an NSProgressIndicator, but you can supply a different object and handle this yourself)
id <ASIProgressDelegate> uploadProgressDelegate;
// Delegate for displaying download progress (usually an NSProgressIndicator, but you can supply a different object and handle this yourself)
id <ASIProgressDelegate> downloadProgressDelegate;
// Whether we've seen the headers of the response yet
BOOL haveExaminedHeaders;
// Data we receive will be stored here. Data may be compressed unless allowCompressedResponse is false - you should use [request responseData] instead in most cases
NSMutableData *rawResponseData;
// Used for sending and receiving data
CFHTTPMessageRef request;
NSInputStream *readStream;
// Used for authentication
CFHTTPAuthenticationRef requestAuthentication;
NSDictionary *requestCredentials;
// Used during NTLM aut
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
iphone 视频管理实例代码 视频下载 管理 播放器本地远程播放 (1873个子文件)
._56OnLine 4KB
._56OnLine 4KB
._ASIHTTP 4KB
._ASIHTTP 4KB
._build 4KB
._build 4KB
._Classes 4KB
._Classes 4KB
._CmAudioPlayer 4KB
._CmAudioPlayer 4KB
._Contents 4KB
._Contents 4KB
._Debug-iphonesimulator 4KB
._Debug-iphonesimulator 4KB
._Debug-iphonesimulator 4KB
._Debug-iphonesimulator 4KB
._DownLoadManage 4KB
._DownLoadManage 4KB
._DWARF 4KB
._DWARF 4KB
._FMImage 4KB
._FMImage 4KB
._FMRadioPlayer 4KB
._FMRadioPlayer 4KB
._i386 4KB
._i386 4KB
._Icon 4KB
._Icon 4KB
._Image 4KB
._Image 4KB
._LocalMediaPlayer 4KB
._LocalMediaPlayer 4KB
._MusicBox 4KB
._MusicBox 4KB
._NetMediaPlayer 4KB
._NetMediaPlayer 4KB
._Objects-normal 4KB
._Objects-normal 4KB
._PkgInfo 4KB
._PkgInfo 4KB
._Resources 4KB
._Resources 4KB
._SixRoom 4KB
._SixRoom 4KB
._SystemSet 4KB
._SystemSet 4KB
._TuDou 4KB
._TuDou 4KB
._View 4KB
._View 4KB
._动漫频道 4KB
._动漫频道 4KB
._博客频道 4KB
._博客频道 4KB
._土豆图标 4KB
._土豆图标 4KB
._女性频道 4KB
._女性频道 4KB
._娱乐频道 4KB
._娱乐频道 4KB
._影视频道 4KB
._影视频道 4KB
._汽车频道 4KB
._汽车频道 4KB
._游戏频道 4KB
._游戏频道 4KB
._生活频道 4KB
._生活频道 4KB
._HyMediaPlayer.app 4KB
._HyMediaPlayer.app 4KB
._HyMediaPlayer.build 4KB
._HyMediaPlayer.build 4KB
._HyMediaPlayer.build 4KB
._HyMediaPlayer.build 4KB
control 256KB
control 256KB
build-state.dat 1.3MB
build-state.dat 1.3MB
build-state~.dat 456KB
build-state~.dat 456KB
build-state.dat 39KB
build-state~.dat 39KB
build-state~.dat 39KB
build-state.dat 39KB
._build-state~.dat 4KB
._build-state.dat 4KB
._build-state.dat 4KB
._build-state~.dat 4KB
Thumbs.db 18KB
HyMediaPlayer.dep 167KB
HyMediaPlayer.dep 167KB
HyMediaPlayer~.dep 44KB
HyMediaPlayer~.dep 44KB
HyMediaPlayer~.dep 24KB
HyMediaPlayer.dep 24KB
HyMediaPlayer.dep 24KB
HyMediaPlayer~.dep 24KB
._HyMediaPlayer~.dep 4KB
._HyMediaPlayer.dep 4KB
._HyMediaPlayer~.dep 4KB
共 1873 条
- 1
- 2
- 3
- 4
- 5
- 6
- 19
xinghexiyue
- 粉丝: 6
- 资源: 16
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
前往页