当前位置: 首页 > news >正文

自己做网站需要什么网站建设原则

自己做网站需要什么,网站建设原则,找做网站页的在哪找,怎么做网站竞价步骤:OAuth授权01_加载登录界面 -> OAuth授权02_获得accessToken -> OAuth授权03_存储账号信息 -> OAuth授权04_封装账号存储 -> OAuth授权05_封装控制器的切换 OAuth授权01_加载登录界面 为了测试方便,暂时把window的根控制器固定设置为授…

步骤:OAuth授权01_加载登录界面 -> OAuth授权02_获得accessToken -> OAuth授权03_存储账号信息 -> OAuth授权04_封装账号存储 -> OAuth授权05_封装控制器的切换

OAuth授权01_加载登录界面

为了测试方便,暂时把window的根控制器固定设置为授权控制器,如下:

在HMOAuthViewController类(继承UIViewController)的viewDidLoad方法中,新建一个webView类,并用webView加载登陆界面(新浪提供的),如下:

 

APP的界面:

 

OAuth授权02_获得accessToken

在前文中已经加载登陆界面,输入账号信息后并点击登陆按钮后,通过-webView:shouldStartLoadWithRequest:navigationType:方法拦截url请求,并从中判断是否为回调地址,若是就利用code的请求标识(授权成功后的request token)换取一个accessToken。如下:

具体如何利用code的请求标识(授权成功后的request token)换取一个accessToken可看accessTokenWith:方法,如下:

注意:这里的网络请求用的是AFN框架,并且由于新浪返回的数据Content-Type是text/plain类型的原因,需要对AFN的AFJSONResponseSerializer做下修改。

授权成功后APP会进入回调地址的页面,这里的回调地址为www.baidu.com。如下:

OAuth授权03_存储账号信息

在授权成功后,利用code向新浪服务器发送请求,成功后会向返回账号的相关信息,这时候应该对账号信息进行存储,避免以后需要再次对应用进行授权。

在前文的发送请求代码中继续完善请求成功的代码,如下:

说明:
1.返回的账号字典数据要转换成数据模型进行存储,并且用归档的方式进行存储。
2.请求成功后APP应该切换窗口的控制器,而不能再进入回调地址的页面,所以要在-webView:shouldStartLoadWithRequest:navigationType:禁止加载回调地址,如下:

3.在请求成功后切换窗口的控制器需要对版本进行判断,另外APPDelegate类也需要修改下,之前暂时把window的根控制器固定设置为授权控制器,现在需要通过是否存储过账号信息对根控制器进行选择,如下:

4.HMAccount账号模型归档和解档要特别注意遵守NSCoding协议,否则会出现这样的错误信息: 

HMAccount.m的具体代码如下: 

HMAccount.h的具体代码如下:

 

OAuth授权04_封装账号存储

前文中,将返回的账号字典数据存进账号模型和存进沙盒的操作应该抽取出来并封装到HMAccount和HMAccountTool两个类中,如下:

 HMAccountTool.m的具体代码如下:

说明:
1.saveAccount:方法除了存储前文必要的账号信息,还需要存储获得账号存储的时间(accessToken的产生时间),以便以后授权过期提醒用户重新登录。
具体代码如下:

2.由于还要存储获得账号存储的时间(accessToken的产生时间),所以要对HMAccount做下修改,添加created_time属性,并对归档encodeWithCoder:方法和解档initWithCoder:方法做下修改。

3.在APPDelegate类中,可对之前的代码进行简化(直接通过HMAccountTool的account:方法取出HMAccount的账号数据),如下:

4.account方法中,如果账号过期,应该返回nil(即会重新返回登录界面),具体代码: 

 

OAuth授权05_封装控制器的切换

前文窗口的根控制器的切换在多处地方使用到,所以应该对其进行封装。这里,只需要做简单的版本判断来切换控制器,所以没必要特意新建一个类来封装,只要通过category对UIWindow进行扩展就可以,具体如下:

说明:
1.AppDelegate类的代码:

 

2.在HMOAuthViewController类中,可以:

 

 

 

 

 

 

 

 

 

 

http://www.yayakq.cn/news/243975/

相关文章:

  • html成品网站重庆市建设工程信息网安全监督特种作业
  • 贵阳网站建设公司楚天网站建设合同
  • 杭州网站推广方案平台永康医院网站建设
  • 做网站的是什么职位企业建设网站有什么作用
  • 如何进行电子商务网站推广上海建设安全协会官网
  • 网站建设难度大吗菠萝菠萝蜜免费播放视频
  • 沈阳网站改版做电影资源网站违法吗
  • 网站的建设与预算一般的网站是由什么语言做的
  • app做好了网站怎么做南昌房产网信息网
  • 扎区门户网站建设深圳住建厅官方网站
  • 山东网站建设开发外包浏览器打开用dw做的网站说
  • 站酷网怎么样怎样自己做网站赚钱吗
  • 做早餐煲汤网站wordpress cdn 回源量
  • 如何更新网站快照手机开发者选项开启的好还是关闭的好
  • 自己建设一个网站软件怎么创作一个微信小程序
  • 网站维护常识搭建网站软件
  • 个人网站模板怎么做网站大量死链
  • 南山做网站的东莞市住房建设局网站首页
  • 郑州网站建设方案免费的外贸网站推广方法
  • 免费那个网站wordpress 怎么登录地址
  • 网站访问量怎么做厂字型布局网站
  • 网站建设哪些职位采招网招标官网
  • 中山网站seo公司宣传网站建站
  • seo网站关键词优化多少钱深圳专业网站建设
  • wordpress 如何建站凡科一个注册做2个网站
  • 学校网站建设多少钱海宏集团网站建设方案
  • 现在那个网站做视频最赚钱企业做网站的步骤与做网站注意事项
  • 网站设计客户端php网站开发图文教程
  • 建设银行企业网上银行网站打不开如何上传视频到公司网站
  • 宁波网站设计哪家公司好营销网站售后调查系统