为了账号安全,请及时绑定邮箱和手机立即绑定

ios 與 php mysql的互動

ios 與 php mysql的互動

江户川乱折腾 2018-07-19 22:22:28
想問一下,我想讓ios與php mysql能夠互動就是ios上填寫表單後能夠匯入mysql裡目前是post進入mysql是可以的(postman)只是現在下一階段有困難就是如何讓使用者在ios上登入時php的mysql可以紀錄?是只要用SESSION就好了嗎?那ios那端會需要甚麼樣的API?
查看完整描述

3 回答

?
慕田峪4524236

TA贡献1875条经验 获得超5个赞

首先明确一点,ios这边与后台的交互都是通过API进行。。并且 API 与 MYSQL 之间会有一定的业务逻辑。。
拿你说的问题 应该是这样的流程:
1、ios 做登录操作,通过API POST 上传 账号密码 参数
2、后台PHP 通过POST 接受参数,并与数据库中数据 进行对比 校验
3、通过后 可以生成一个session 然后将session存入数据库,并将session返回给ios客户端
4、ios客户端将session 打包到API请求里面 
5、php后台接受任意的请求 查看session是否存在session表里 有的话 请求合法 无的话 请求不合法

另:未考虑 过期机制。。简单的流程


查看完整回答
反对 回复 2018-07-31
?
牛魔王的故事

TA贡献1830条经验 获得超3个赞

最简单的办法就是使用web的session机制,现有的php代码改动最小甚至不用改。
把给iOS使用的API接口想象成网页里的一个ajax请求就行了,php返回json数据比较方便客户端解析。

举个例子:
现在的php登录可能是这样的:用户通过网页的 form 提交用户名和密码,php查询mysql验证用户信息,如果可以登录就设置session和cookie,标记用户已登录,然后php返回 redirect 响应(登陆前的页面或首页)。
如果是ajax登录,最后一步返回的是json数据,比如 return json_encode(['code' => '1', 'msg' => '登录成功!']);

上面是一个最简单的php+mysql登录的例子,如果你看不明白就先去搜索学习“php ajax登录”。如果能知道上面说的是什么,iOS部分其实不用学习了,你已经会了。iOS使用的Api跟Ajax使用的是一样一样的。
iOS客户端使用HTTP client (推荐 AFNetworking),请求某个URL,php返回json数据即可。关于cookie,session什么的,系统已自动处理,iOS客户端无须手动处理。

Api返回JSON只是方便客户端解析,你也可以返回xml , text, html等任意类似,只要跟客户端协商好就行了。


查看完整回答
反对 回复 2018-07-31
  • 3 回答
  • 0 关注
  • 929 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信