gpt4 book ai didi

ios - 对于 Soap NSURLConnection,请确保您的应用支持 IPv6 网络,因为需要 IPv6 兼容性

转载 作者:行者123 更新时间:2023-11-28 21:25:56 25 4
gpt4 key购买 nike

我已经在 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 方法的 IpV6 代码可以替换 NSURLConnection

最佳答案

在 WWDC 2015 上,Apple 宣布在 iOS 9 中过渡到仅 IPV6 网络服务。现在从 2016 年 6 月 1 日起,Apple 强制要求该应用程序应支持 iPV6。

如果开发人员使用苹果提供的标准网络 API,如 NSURLSession 和 CFNetwork API,他们应该不会遇到任何问题。否则,您必须将代码移至支持 IPV6 的 API。

如果您正在寻找使用像 AFNetworking 这样的标准网络库。根据这个site AFNetworking 3.0 支持 IPV6。

Apple 有关于 how to test IPV6 support 的文档.

关于ios - 对于 Soap NSURLConnection,请确保您的应用支持 IPv6 网络,因为需要 IPv6 兼容性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38046187/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com