在 http_demo 这个文件里面 .. 先导入两个包 .. 一个是刚才我们安装好的 http .. 起个名字叫 http .. 再导入 dart:async 这个包 ..
然后给 HttpDemo 里的 Scaffold 添加一个 body 属性 .. 对应的值是 HttpDemoHome ..
下面再去创建一下这个小部件 .. 添加一个 Stateful 类型的小部件 .. 名字叫 HttpDemoHome .. 在这个小部件的 State 类里面 .. 先添加一个 initState .. 在里面执行一下 fetchPost 这个方法 ..
然后我们可以去定义一下这个方法 .. 方法的名字是 fetchPost .. 它是一个 async 方法 .. 因为网络请求都是一些异步的动作 ..
里面添加一个 response ,表示请求之后得到的响应 .. await .. 然后用一下 http 上的 get ,发出一个 GET 类型的请求 .. 把要请求的地址告诉这个方法 .. 请求一下 https://resources.ninghao.net/demo/posts.json ..
这个地址其实并不是一个接口 .. 只是一个静态的 json 文件 ... 在你自己的应用里面,可能需要请求一些数据接口 .. 这个接口可能是别人提供给你的 .. 或者是自己创建的 ..
我们可以使用一个 REST 客户端 .. 请求一下这个地址 ... 发送一下这个请求 .. 返回的就是一个 JSON 数据 .. 在它的 posts 属性里面是一组内容 ..
回到项目 .. 我们可以先在控制台上,输出 response 里的 statusCode .. 就是响应回来的状态码 ..
打开调试控制台 .. 然后执行一下 hot restart ..
控制台上会输出一个statusCode .. 对应的值是 200 .. 这个 http 状态码的意思就是成功得到了响应 ..
我们可以再试一下 .. 请求一个不存在的地址 ..
然后再 hot restart 一下 ..
这回输出的这个状态码,它的值是 404 ... 表示请求的资源不存在 ..
响应里面带的具体的数据是在 body 这个属性里面 .. 在控制台上,我们可以再输出这个 body ..
执行一下 hot restart ...
这次在控制台上会输出请求得到的响应里面的 body 属性的值,也就是响应回来的具体的数据 ..