RequestForOCFile(网络请求OC文件写入工具)

来源:互联网 发布:新教育网络师范学院 编辑:程序博客网 时间:2024/05/18 00:10

  • RequestForOCFile网络请求OC文件写入工具
    • 简介
    • 下载地址
    • 使用方法
      • 1 头部权限文件填写和预览
      • 2请求参数填写
      • 3 选择返回结果
      • 4 文件成功生成
    • 结束语

RequestForOCFile(网络请求OC文件写入工具)

前端开发离不开和后台交互,iOS亦然,后台返回的数据很多时候是以json的格式返回。iOS开发一般会根据后台返回的json数据创建数据模型,属性和json返回的数据一一对应。如果返回的数据很多,那么可能会需要一个一个字段去赋值粘贴来做属性的声明,写这个RequestForOCFile的目的正是简化这个操作,根据请求的结果生产.m和.h文件然后直接可以拿到项目使用。可能有的人会说,其实也没简化太多,也就是复制粘贴几句话的事,有的接口的结果甚至没多少,没必要这么做。我只想说,不“懒”的程序员,不是一个好的程序员,就好比一个小的功能,可能这种人会觉得就直接在需要用的地方写好能实现就行了,不用考虑去封装把这些代码拆分成很多小的方法。如果你是这种人,你可以关掉这篇文章了。

1.简介

这是个使用Python写的程序,IDE用的是JetBrains的PyCharm,GUI模块用的是wxPython,基本上只是使用了wxPython和Requests两个包的基础功能,因为初学,代码写的应该不是很规范,前后大概只花了1周左右,后期会进行优化和改版,这里主要是介绍使用方法。

2.下载地址

网盘下载

3.使用方法

3.1 头部权限文件填写和预览

1.权限头文件.png
类名,项目名,作者和所有权均能自己修改,且点击预览或者请求成功都会保存下来,下次就是使用你之前填写的,点击预览后作为iOS开发肯定一眼能看出这是需要写入到m或者h文件头部的版权部分,另外,类名会在写入的时候当做m和h的文件名,内部import也会写入import XXX.h(XXX为你填写的类名),这里后面均按照默认的设置讲解,类名设置为默认的JFModel没有修改。

3.2请求参数填写

2.请求参数设置.png
默认的请求地址为http://ip.taobao.com/service/getIpInfo.php
参数默认为空。上面的默认请求地址只是个示例,可以发送post请求,接收一个字段ip,值为任意ip地址,请求后会返回该ip的一些详细信息,例如国家,地区等。这里我们输入左边为ip,右边输入一个1.1.2.3这个ip地址,然后点击‘添加’,这里只是个示例,你可以尝试换一个接收多参数的请求地址,添加多个参数去请求,每输入完参数添加后,下面预览会显示当前的参数预览,重新请求的话先清空(目前还没优化好,暂时只能一次性清空完),请求地址在请求成功后会保存,再次打开软件,地址上为上次成功请求的地址。

3.3 选择返回结果

选择返回结果.png
可以看到,使用{ip:1.1.2.3}这个参数请求后,返回的json出来了,一般像例子里的这种情况,我们iOS里需要根据data里的json串手动写属性,这里我们点击按钮选择返回的子字段用来生成h和m文件,会弹出需要选择的次级字段,整个json最外层只有code和data两个字段,我们要的是data里的字段,选择data点击确定。

3.4 文件成功生成

结果返回.png

m文件.png

确定后,会自动弹出一个文件夹,里面已经包含了需要的m和h文件,名字为之前给的类名JFModel,点开后会看到已经按照iOS的规范以及返回的结果成功生成了文件,直接拿到项目中去用即可。这里可以看到,注释为返回json里的各个键值对的value值,所以注释修改起来也很方便,把第一个属性中国改为国家即可,其它类似。

如果在3.3中选择的是第二个按钮直接使用返回的json生成h和m文件,则会直接生成两个属性的h和m文件,属性分别叫codedata,因为有的地址请求确实第一层就已经返回了各个需要的数据了,这样选择该按钮直接生成即可。

4.结束语

目前功能上来说还不是很全,比如智能检测到结果的第二级字段,主要还是因为Python才接触不久,但是语法相对还是比较简单的。
脚本能给开发带来很多便利,个人觉得作为一个程序员,会一门脚本语言还是有必要的,很多操作能简化,且能让你对计算机的命令进行深入了解。比如iOS开发,我相信很多人甚至不知道xcode中你的任何操作,包括build,run等等,其实内部只是运行了一下xcode的命令行xcodebuild
或者修改了某个工程文件而已,也即是说使用脚本也可以直接让一个项目跑起来,或者打包。如果接触过脚本打包的同学,应该是会有所了解。当然,觉得这些东西没必要的同学,你可以忽略,安心当个码农把功能实现即可。

0 0
原创粉丝点击