0

我在构建 iPhone 应用程序的第一个版本时忘记输入会话命令。现在,我在每个 PHP 函数中编写了一个会话检查命令。

但是,第一个版本运行不佳,因为它有时会丢失会话。很多人已经在使用第一个版本,目前无法更改。

所以,我在想,如果我可以通过使用 php 命令获取 iPhone 的 udid 值,我就会给他们一个新的会话值,因为它会丢失会话数据。还是有其他解决方案可以做到这一点?

谢谢你。

4

1 回答 1

0

您可以使用 web 服务将 udid 从 iphone 发送到 php,然后您可以访问它。

 NSString *token=[NSString stringWithFormat:@"%@",deviceToken];
token= [token stringByReplacingOccurrencesOfString:@"<" withString:@""];
token= [token stringByReplacingOccurrencesOfString:@">" withString:@""];
token= [token stringByReplacingOccurrencesOfString:@" " withString:@""];
NSString *post = [NSString stringWithFormat:@"token=%@",token];
NSData *postData = [post dataUsingEncoding:NSASCIIStringEncoding allowLossyConversion:YES];
NSString *postLength = [NSString stringWithFormat:@"%d",[postData length]];
NSMutableURLRequest *request = [[[NSMutableURLRequest alloc] init] autorelease];
[request setURL:[NSURL URLWithString:[NSString stringWithFormat:@"http://www.server.com/web-service/save-token.php?"]]];
 [request setHTTPMethod:@"POST"];
[request setValue:postLength forHTTPHeaderField:@"Content-Length"];

[request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Current-Type"];
[request setHTTPBody:postData];
NSData *returnData = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];
NSString *returnstring = [[NSString alloc] initWithData:returnData encoding:NSUTF8StringEncoding];
于 2012-05-16T12:40:21.917 回答