你好,我实际上开发了一个 Ios 应用程序 此应用程序使用 PHP Web 服务从 mysql 获取数据(转换为 JSON)。 实际上它工作得很好。
但问题是: 如果我想更新、删除一条信息。
例如:
@interface Base : NSManagedObject
@property (nonatomic, retain) NSNumber * id;
@property (nonatomic, retain) NSNumber * latitude;
@property (nonatomic, retain) NSNumber * longitude;
@property (nonatomic, retain) NSString * mail;
...
这个类是Fill(一个http请求后,获取JSON)...
问题:
self.mail = @"[email protected]";
如何将这些数据更新到我的 MySQL 数据库?
创建另一个WebService并通过url发送数据?
http://mywebsite/service/baseClassUpdate.php?id=XX&mail=XXXX
仅通过普通请求发送邮件更新绝对不安全。 首先,这些操作之后应该是密码验证,其次你应该在最后添加一个 md5 哈希签名验证,并在服务器上验证该签名...
您还应该以单向哈希格式(md5 或 SHA1)发送密码,并使用您的网络服务器数据库中的内容验证哈希值...
编辑 回复您对此答案的问题
我会这样做: 我会这样做:
website/script.php?id=XX&mail=XXXX&password=MD5Pass&signature=MD5signature=MD5Signature
md5signature 应该是所有参数 (id) (mail) (password) 的 md5 哈希值和一个 secret 密码,例如 mySecr3tPass 因此,如果 id=12,mail = [email protected] 和 pass=AERF124F,则签名将是 [email protected] 的 MD5 哈希,即 0b9492395c9c1a73a6622cab5a6a4de5
所以请求将是:website/[email protected]&password=AERF124F&signature=0b9492395c9c1a73a6622cab5a6a4de5
因此,在您的 php 脚本中,您应该计算所有参数的 md5 哈希值 + 密码短语并查看它们是否匹配。 如果它们匹配,则请求有效,您可以继续,如果它们不匹配,则有人试图劫持数据库,忽略它!
关于mysql - 通过iOS应用程序将数据从json(php webservice)修改为mysql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10232604/
欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) | Powered by Discuz! X3.4 |