这是一个基于Alamofire封装的网络请求。SSBaseNetWork是一个单例,通过这个单例对象去调用网络请求的方法。
一些必要的参数在这里直接设置。拼接在url后面的accessToken默认是拼接的,你可以更改默认设置,同时你可以通过单例对象去修改这个属性,如果你修改了,最好记得每次进行网络请求之前,设置好这个属性,或者你在每次更改之后,请求结束之后在置于默认的状态。

这些方法获得完整的url,固定参数和传入参数整合。这里写了一个枚举RequestMethod,去判断请求是post还是get。

数据请求,设置请求头。验证证书,这里是没有本地配置证书的,直接设置允许的。


上传带图片参数的数据,图片要求是Data的数据类型。

证书验证的具体方法。如果不设置这一步,https的请求无法请求到数据,会报错。

具体使用,向上在封装一层,根据你实际的请求,在使用base类时,如果不需要在url之后拼接参数,就更改base里面的默认值,后面每次单例的调用就不需要在管这个属性。这里数据解析用的ObjectMapper.

最后,如果对代码有更好的意见,或者有什么错误,请简信或者评论我,我会很感谢并且思考和更正问题。期待我们一起在码农的这条路上一起进步。
代码链接: https://pan.baidu.com/s/1dF9qyNv 密码: ybmq
网友评论
responseSerializationFailed(Alamofire.AFError.ResponseSerializationFailureReason.jsonSerializationFailed(Error Domain=NSCocoaErrorDomain Code=3840 "Invalid value around character 0." UserInfo={NSDebugDescription=Invalid value around character 0.}))
请求失败.什么意思啊