【发布时间】:2015-07-18 10:36:41
【问题描述】:
在我的 iphone 应用程序中,目前我正在使用 AFHTTPRequestOperationManager 将发布请求发送到我的服务器并获取数据。
但我注意到我的一些应用用户已经破解了这些发布请求并更改了发布请求的值以增加他们在应用中的硬币。
所以我想让这些整个帖子请求加密/https(我什至不知道这个术语)。我希望用户无法编辑这些帖子请求。
有没有办法通过 AFNetworking 做到这一点?我需要一个发布请求的示例和读取该请求的 PHP 示例。我搜索了谷歌,但找不到任何容易理解的东西。下面是我目前使用的 HTTP 请求模板。请详细解答,我不是AFNetworking或PHP方面的专家。
NSString *url = [NSString stringWithFormat:@"%@getlist-s.php", [Globals getSiteUrl]];
AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
manager.responseSerializer.acceptableContentTypes = [NSSet setWithObject:@"text/plain"];
NSDictionary *params = @{@"user_id": [Globals loggedInUser].Id,
@"action": @"get_list",
@"offset": [NSString stringWithFormat:@"%d", offset]
};
[manager POST:url parameters:params success:^(AFHTTPRequestOperation *operation, id responseObject) {
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
NSLog(@"Error: %@ %@", error, operation.responseString);
}];
【问题讨论】:
-
对于 AFNetworking,这仅意味着使用
https:前缀而不是http:前缀调用 API 端点。但是,您必须在服务器上启用 HTTPS(打开 443 端口,购买并上传 SSL 证书...)。 -
取决于使用的身份验证等,这应该会有所帮助,但请考虑请求可能来自您的应用程序以外的其他东西,例如来自终端或自定义客户端的 curl。用户可能会使用代理执行 MITM 攻击以修改发布数据。对于一个真正安全的方案,您可能需要领域专家将其组合在一起。但您可能会很高兴只是降低欺诈程度。
标签: php ios objective-c afnetworking