ios – 对于Soap NSURLConnection,请确保您的应用支持IPv6网络,
发布时间:2020-12-15 01:42:06 所属栏目:百科 来源:网络整理
导读:我已经在AppStore中提交了我的应用程序,如果由于以下原因他们拒绝. Hello,Thank you for providing this information. Upon further review,we were still unable to login to the app. Please note that apps are reviewed on an IPv6 network. Please ensu
我已经在AppStore中提交了我的应用程序,如果由于以下原因他们拒绝.
Hello,Thank you for providing this information. Upon further review,we were still unable to login to the app. Please note that apps are reviewed on an IPv6 network. Please ensure that your app supports IPv6 networks,as IPv6 compatibility is required. For information about supporting IPv6 Networks,refer to Supporting iPv6 DNS64/NAT64 Networks. For a networking overview,please see About Networking. Best regards,App Store Review 我正在使用SOAP Envelope服务来使用它, 这是我的代码 @property(retain,nonatomic)NSString *xmlString; @property(nonatomic,retain)NSMutableData *webResponseData; -(void)method_GetUpcomingLotteries { NSString *soapMessage = [NSString stringWithFormat:@"<?xml version="1.0" encoding="UTF-8"?>n" "<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope" xmlns:ns1="urn:Lottery.Intf-ILottery" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:enc="http://www.w3.org/2003/05/soap-encoding">n" "<env:Body>n" "<ns1:GetUpcomingLotteries env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">n" "<EntityID xsi:type="xsd:int">2</EntityID>n" "<Password xsi:type="xsd:string">Smart@Winners</Password>n" "<SortBy xsi:type="xsd:int">0</SortBy>n" "<limit xsi:type="xsd:int">0</limit>n" "</ns1:GetUpcomingLotteries>n" "</env:Body>n" "</env:Envelope>"]; NSURL *sRequestURL = [NSURL URLWithString:@"http://isapi.mekashron.com/soapclient/soapclient.php?"]; NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:sRequestURL]; NSString *sMessageLength = [NSString stringWithFormat:@"%d",[soapMessage length]]; [request addValue: @"text/xml; charset=utf-8" forHTTPHeaderField:@"Content-Type"]; [request addValue: @"urn:Lottery.Intf-ILottery/GetUpcomingLotteries" forHTTPHeaderField:@"SOAPAction"]; [request addValue: sMessageLength forHTTPHeaderField:@"Content-Length"]; [request setHTTPMethod:@"POST"]; [request setHTTPBody:[soapMessage dataUsingEncoding:NSUTF8StringEncoding]]; NSLog(@"soapMessage===n %@",soapMessage); NSURLConnection *theConnection = [[NSURLConnection alloc] initWithRequest:request delegate:self]; if( theConnection ) { NSLog(@"hiii"); self.webResponseData = [NSMutableData data]; }else { NSLog(@"Some error occurred in Connection"); } } - (void)connectionDidFinishLoading:(NSURLConnection *)connection { NSLog(@"Received Bytes from server: %lu",(unsigned long)[self.webResponseData length]); NSString * strXml = [[NSString alloc] initWithBytes: [self.webResponseData mutableBytes] length:[self.webResponseData length] encoding:NSUTF8StringEncoding]; NSLog(@"---- %@",strXml); } -(void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response { [self.webResponseData setLength:0]; } -(void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data { [self.webResponseData appendData:data]; } -(void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error { NSLog(@"Some error in your Connection. Please try again."); } 我的问题 : 1)请告诉我是否需要更改方法或更改服务器端以将API从IPv4传输到IPv6? 2)在ios9下使用SOAP方法替换NSURLConnection的IpV6代码 解决方法
在2015年WWDC上,苹果宣布向iOS 9过渡到仅支持IPV6的网络服务.从2016年6月1日起,苹果公司强制要求应用程序支持iPV6.
如果开发人员使用Apple提供的NSURLSession和CFNetwork API等标准网络API,他们不会遇到任何问题.否则,您必须将代码移动到支持IPV6的API. 如果您正在寻找使用AFNetworking等标准网络库.根据这个site AFNetworking 3.0支持IPV6. Apple有一份关于how to test IPV6 support的文档. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |