php文件获取设备令牌并将其存储给以后的用户

时间:2014-07-18 14:38:37

标签: php ios iphone push-notification

我一直在查看所有类型的设备令牌存储方法,我认为我的问题是我从iOS设备发送数据的地方。

例如

NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"http://myhost.com/filecreate.php?token=%@",
[[NSUserDefaults standardUserDefaults] objectForKey:@"apnsToken"]]]; //set here your URL

我应该用什么样的PHP代码来处理类似的东西?

我目前正在使用xampp,所以我在我的localhost上使用它。

我是php和体面的iOS开发者的新手,所以我真的不知道如何继续。

这就是我如何编辑32个整数的设备令牌

NSString * token = [NSString stringWithFormat:@"%@", deviceToken];
    //Format token as you need:
    token = [token stringByReplacingOccurrencesOfString:@" " withString:@""];
    token = [token stringByReplacingOccurrencesOfString:@">" withString:@""];
    token = [token stringByReplacingOccurrencesOfString:@"<" withString:@""];

推送到php脚本

2 个答案:

答案 0 :(得分:0)

您正在使用查询字符串,因此您可以像这样处理它:

$token = $_GET['token'];

我更喜欢发布这样做:

$token = $_POST['token'];

答案 1 :(得分:0)

在您的IOS代码中,您只需将参数附加到URL(正常GET)即可使用GET。 如果你正在使用NSURLConnection,我宁愿使用&#34; GET&#34;方法,将方法指定为GET,而不是仅仅附加URL。

您可以执行以下操作,

   // Create the request.
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:@"http://myhost.com/filecreate.php"]];

// Specify that it will be a POST request
request.HTTPMethod = @"GET";

// This is how we set header fields
[request setValue:@"application/xml; charset=utf-8" forHTTPHeaderField:@"Content-Type"];

// Convert your data and set your request's HTTPBody property
NSString *stringData = @"token=somedata&parameter_name=some_value";
NSData *requestBodyData = [stringData dataUsingEncoding:NSUTF8StringEncoding];
request.HTTPBody = requestBodyData;

// Create url connection and fire request
NSURLConnection *conn = [[NSURLConnection alloc] initWithRequest:request delegate:self];

在php中获取值的方法是

$token=$_GET["token"];
$second_param=$_GET["parameter_name"]; for GET method.

$ _ GET是一个用于管理GET请求的php Super Global。同样明智的$ _POST用于管理&#39; POST&#39;请求。

要存储数据,对于短期存储,您可以使用$ _SESSION。

$_SESSION["token"]=$_POST["token"];

对于长期存储使用$ FILE数据库来创建或写入文件。

this更多地了解超级全局变量,例如$ _POST,$ _ SERVER等。