为什么的iOS 8.0模拟器在Xcode 6.0.1不能正确
问题描述:
升级后取cookie来的Xcode 6,当我从登录获取饼干“POST”行动,像这样:为什么的iOS 8.0模拟器在Xcode 6.0.1不能正确
NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"http://%@/login.php", kDSZHDomainString]];
ASIFormDataRequest *asirequest = [ASIFormDataRequest requestWithURL:url];
[asirequest setPostValue:username forKey:@"u"];
[asirequest setPostValue:password forKey:@"p"];
[asirequest setTag:kLoginRequest];
[asirequest setStringEncoding:-2147481083];
[asirequest setTimeOutSeconds:600];
[asirequest setDelegate:self];
[asirequest startAsynchronous];
当我设置断点get请求的标题:
NSMutableDictionary * headers = [request requestHeaders];
调试信息:
Printing description of headers:
{
"Accept-Encoding" = gzip;
"Content-Length" = 20;
"Content-Type" = "application/x-www-form-urlencoded; charset=hz-gb-2312";
Cookie = "__utma=213790228.284667840.1411460847.1411460847.1411460847.1; __utmz=213790228.1411460847.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); o=m; s=542366a13a44e; sv[1]=12532852%2C12532147%2C12534523; v[11]=12515374; v[1]=12534523; v[2]=12521992; v[3]=12527199; v[9]=12441637";
"User-Agent" = "Top81 0.7 rv:0.7.459 (iPhone Simulator; iPhone OS 8.0; en_US)";
}
在iOS系统7模拟器,标题是:
Printing description of headers:
{
"Accept-Encoding" = gzip;
Cookie = "o=m; s=542369d4ede78; sv[1]=12532886%2C12528442%2C12534551; u=xxxx%2Ca999b1c0d3663e236f58277302b8be90%2C0; v[1]=12534551";
"User-Agent" = "Top81 0.7 rv:0.7.459 (iPhone Simulator; iPhone OS 7.1; en_US)";
}
所以,cookie“u”正确提取。
我用ASIHTTPRequest和AFNetworking测试代码,并得到相同的结果。
它是Xcode和iOS 8模拟器的错误或任何代码来解决这个问题?
答
我用afnetworking,它是在IOS 8 做工精细这里的功能
+(void)postData : (NSString *)url parameters:(NSDictionary *)paraDict success: (void (^) (NSDictionary *responseStr))success failure: (void (^) (NSError *error))failure
{
AFHTTPRequestOperationManager *manager = [[AFHTTPRequestOperationManager alloc] initWithBaseURL:[NSURL URLWithString:url]];
manager.responseSerializer = [AFHTTPResponseSerializer serializer];
AFHTTPRequestOperation *op = [manager POST:url parameters:paraDict constructingBodyWithBlock:^(id<AFMultipartFormData> formData) {
} success:^(AFHTTPRequestOperation *operation, id responseObject)
{
NSError* error = nil;
success([NSJSONSerialization JSONObjectWithData:responseObject options:0 error:&error]);
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
failure(error);
}];
[op start];
}
这里输入的网址字符串不NSURL这应该是像@“http://www.google.com”
和paradict是字典.U可以使它像
的NSDictionary * paraDict = @ {@ “用户名”:@ “U”,@ “密码”:@ “p”}
希望它帮助