SWIFT中使用AFNetwroking访问网络数据

AFNetworking 是 iOS 一个使用很方便的第三方网络开发框架,它可以很轻松的从一个URL地址内获取JSON数据。

在使用它时我用到包管理器Cocoapods 不懂的请移步:

Cocoapods安装:http://www.cnblogs.com/foxting/p/4520758.html

RUBY安装:http://www.cnblogs.com/foxting/p/4520829.html

1.在终端中用CD命令定位到所建项目的根目录,我当前的项目名为Fresh

接着在终端内输入:vi Podfile 后会打开一个编辑页面,在编辑页面内输入,AFNetworking不输入版本号默认为最新的版本

platform :ios, ‘8.0‘

pod ‘AFNetworking‘

退出vi及保存文件

在「命令行模式(command mode)」下,按一下「:」冒号键进入「Last line mode」,例如:

: w filename (输入 「w filename」将文章以指定的文件名filename保存)

: wq (输入「wq」,存盘并退出vi)

: q! (输入q!, 不存盘强制退出vi)

退出vi保存文件后执行以下命令安装podfile

pod install

经过几分钟的等待后终端内有类似下面的提示,打开项目所在的目录会发现多了一个以.xworkspace结尾的文件,以后就用这个文件打开项目

打开项目有两个主目录,如下图:

由于AFNetworking是用Object-c编写的,所以首先要添加一个.h的头文件

接着在文件内添加一行即可

#import <AFNetworking/AFNetworking.h>

接着在项目的Build Settings内配置该头文件

配置完以后按COMMAND+B编译项目。

接着在ViewController内添加代码,如下调用国外免费的天气预报JSON接口,本来想调用国内股票的AIP,发现调不了每次都失败应该返回的Content-Type="text/html"它不接受吧。

    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.
        var requestManager = AFHTTPRequestOperationManager()
        //let url = "http://apis.haoservice.com/lifeservice/stock/hs"
        //let params = ["gid":"sh601009","key":"2d13447002d14f35a0f33f4dfa405c93"]
        let url = "http://api.openweathermap.org/data/2.5/weather"
        let params = ["lat":37.79,"lon":-122.41,"cnt":0]
                //这闭包的写法好像JQuery,
        requestManager.GET(url, parameters: params,
            success: { (operation:AFHTTPRequestOperation!,responseObject:AnyObject!) -> Void in
                var stock = responseObject as? NSDictionary
            },

            failure: { (operation:AFHTTPRequestOperation!,error:NSError!) -> Void in
                println(error)
            }
        )
    }
时间: 2024-10-06 22:49:40

SWIFT中使用AFNetwroking访问网络数据的相关文章

10_Android中通过HttpUrlConnection访问网络,Handler和多线程使用,读取网络html代码并显示在界面上,ScrollView组件的使用

?? 编写如下项目: 2 编写Android清单文件 <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.itheima28.htmldemo" android:versionCode="1" andr

Swift Tips - 在 Swift 中自定义下标访问

Untitled Document.md input[type="date"].form-control,.input-group-sm>input[type="date"].input-group-addon,.input-group-sm>.input-group-btn>input[type="date"].btn,input[type="time"].input-sm,.form-horizontal

NSURLSession访问网络数据

1.NSMutableURLRequest的设置 //创建NSMutableURLRequest对象 NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url]; //设置请求类型 [request setHTTPMethod:@"POST"]; //设置超时时间 [request setTimeoutInterval:60]; //设置缓存策略 [request setCachePolicy:NSUR

IOS开发中使用AFNetworking请求网络数据

1.把AFNetworking的文件拖放到项目中(注意不同的版本方法不一样,本历程基于版本2013): 2.使用#import "AFNetworking.h"命令把AFNetworking.h=包含进来: 3.完整代码: 1 // 2 // ViewController.m 3 // 网络请求 4 // 5 // Created by mac on 16/5/12. 6 // Copyright © 2016年 mzw. All rights reserved. 7 // 8 9 #

使用Python访问网络数据 python network-data 第六章(2)

Welcome 吴铭英 from Using Python to Access Web Data ×Your answer is correct, score saved. Your current grade on this assignment is: 100% Calling a JSON API In this assignment you will write a Python program somewhat similar to http://www.pythonlearn.com

使用Python访问网络数据 python network-data 第五章

Lesson 5--Extracting Data from XML In this assignment you will write a Python program somewhat similar tohttp://www.pythonlearn.com/code/geoxml.py. The program will prompt for a URL, read the XML data from that URL using urllib and then parse and ext

使用Python访问网络数据 python network-data 第六章

question: Extracting Data from JSON The program will prompt for a URL, read the JSON data from that URL using urllib and then parse and extract the comment counts from the JSON data, compute the sum of the numbers in the file. Extracting Data from JS

使用python访问网络上的数据

这两天看完了Course上面的: 使用 Python 访问网络数据 https://www.coursera.org/learn/python-network-data/ 写了一些作业,完成了一些作业.做些学习笔记以做备忘. 1.正则表达式 --- 虽然后面的课程没有怎么用到这个知识点,但是这个技能还是蛮好的. 附上课程中列出来的主要正则表达式的用法: Python Regular Expression Quick Guide ^ Matches the beginning of a line

Swift中的访问修饰符对于扩展(extension)的影响

在Swift中,有一种结构extension,类似于OC中的Category分类,非常适合于对代码进行管理 同时,常用的访问修饰符有public.internal.private,而对于这三个访问修饰符,对extension的影响是各不一样的 在本文中,我将对同一文件下和不同文件下的extension.在本类和其他类调用,共四种情况进行分别介绍. 在介绍前,我先创建了一个非常简单的iOS项目,并新建了一个Person类和Person类的extension文件,如下图: 其中,Person类的代码