Dart的HTTP请求和响应(1)

简介: <div class="markdown_views"><h2 id="get请求">GET请求</h2><p>在上代码之前,先把所需要的http包分享出来<a href="http://pan.baidu.com/s/1jGH2zgq">http://pan.baidu.com/s/1jGH2zgq</a></p><pre class="prettyprint"

GET请求

在上代码之前,先把所需要的http包分享出来http://pan.baidu.com/s/1jGH2zgq

import 'package:http/http.dart' as http;

main(List<String> arguments) {
  var url = 'http://httpbin.org/';
  //向指定URL发送GET请求
  http.get(url).then((response) {
    print("响应状态: ${response.statusCode}");
    print("响应正文: ${response.body}");
  });
}

代码很简单,效果如下
这里写图片描述

POST请求

import 'package:http/http.dart' as http;

main(List<String> arguments) {
  var url = 'http://httpbin.org/post';
  //向指定URL发送带参数的POST请求
  http.post(url ,body: 'name=doodle&color=blue').then((response) {
    print("响应状态: ${response.statusCode}");
    print("响应正文: ${response.body}");
  });
}

这也很简单,效果如下
这里写图片描述

展示JSON数据

import 'dart:convert';
import 'package:http/http.dart' as http;

main(List<String> arguments) {
  var url = 'https://api.github.com/users/dart-lang/repos';
  http.get(url ,headers : {'User-Agent':'Dart/1.0(My Dart client)'}).then((response) {
    //解析响应字符串,并生成Json对象
    List<String> repos = JSON.decode(response.body);
    //输出说明字符串
    var heading = 'Repository | Star count | Fork count';
    print(heading);
    //输出与说明字符串等长的‘=’字符串
    print(new List.filled(heading.length, '=').join());
    //循环输出Json对象的指定参数
    for (var repo in repos) {
      print(
          "${repo['name']} | "
          "${repo['stargazers_count']} | "
          "${repo['forks_count']}");
    }
  });
}

先来看看里面的JSON字符串
这里写图片描述
晕了没,再看看代码执行后展示的部分JSON数据
这里写图片描述
这样就好看多了

目录
相关文章
|
15天前
|
Java
java原生发送http请求
java原生发送http请求
|
22天前
|
网络协议 Linux iOS开发
推荐:实现RTSP/RTMP/HLS/HTTP协议的轻量级流媒体框架,支持大并发连接请求
推荐:实现RTSP/RTMP/HLS/HTTP协议的轻量级流媒体框架,支持大并发连接请求
48 1
|
1月前
|
编解码 测试技术 索引
性能工具之 Jmeter 使用 HTTP 请求编写 HLS 脚本
在我们简要介绍了 HLS 协议的基础知识,接下来我们详细介绍一种使用 Jmeter 编写压测 HLS 协议脚本的方法。
72 1
性能工具之 Jmeter 使用 HTTP 请求编写 HLS 脚本
|
1月前
|
JSON 数据格式
第三方系统或者工具通过 HTTP 请求发送给 ABAP 系统的数据,应该如何解析试读版
第三方系统或者工具通过 HTTP 请求发送给 ABAP 系统的数据,应该如何解析试读版
27 0
|
4天前
|
安全 Java 网络安全
Servlet 教程 之 Servlet 客户端 HTTP 请求 2
Servlet教程介绍了如何在Servlet中处理HTTP请求,包括获取Cookie、头信息、参数、Session等。方法如:`getCookies()`、`getAttributeNames()`、`getHeaderNames()`、`getParameterNames()`等。还能获取身份验证类型、字符编码、MIME类型、请求方法、远程用户信息、URL路径、安全通道状态以及请求内容长度等。此外,可通过`getSession()`创建或获取Session,并以`Map`形式获取参数。
20 8
|
3天前
|
XML Java 数据格式
Servlet 教程 之 Servlet 服务器 HTTP 响应 3
`Servlet`教程示例展示了如何创建一个HTTP响应,使用`@WebServlet(&quot;/Refresh&quot;)`的`Refresh`类继承`HttpServlet`。在`doGet`方法中,设置了`Refresh`头以每5秒自动刷新,并用`setContentType(&quot;text/html;charset=UTF-8&quot;)`设定内容类型。还使用`Calendar`和`SimpleDateFormat`获取并格式化当前时间显示。相应的`web.xml`配置指定了Servlet路径。当访问此Servlet时,页面将每5秒更新一次显示的系统时间。
14 4
|
7天前
|
安全 网络安全 开发工具
对象存储oss使用问题之flutter使用http库进行post请求文件上传返回400如何解决
《对象存储OSS操作报错合集》精选了用户在使用阿里云对象存储服务(OSS)过程中出现的各种常见及疑难报错情况,包括但不限于权限问题、上传下载异常、Bucket配置错误、网络连接问题、跨域资源共享(CORS)设定错误、数据一致性问题以及API调用失败等场景。为用户降低故障排查时间,确保OSS服务的稳定运行与高效利用。
22 1
|
1月前
|
JSON 前端开发 数据格式
糊涂工具类真是场景下请求http接口的案例
糊涂工具类真是场景下请求http接口的案例
21 0
|
1月前
|
数据采集 缓存 前端开发
http和https请求服务器的时候在请求头部分都带什么到服务器呢?
HTTP和HTTPS请求头基本结构相似,HTTPS多了一层SSL/TLS加密。常见请求头如Accept(指定内容类型)、Authorization(身份验证)、Cookie(会话跟踪)、User-Agent(标识用户代理)等。HTTPS特有的头包括Upgrade-Insecure-Requests(升级到HTTPS)、Strict-Transport-Security(强制使用HTTPS)、Sec-Fetch-*(安全策略)和X-Content-Type-Options、X-Frame-Options等(增强安全性)。实际应用中,请求头会根据需求和安全策略变化。
20 0
|
1月前
|
网络协议 网络安全 API
Qt 网络编程之美:探索 URL、HTTP、服务发现与请求响应
Qt 网络编程之美:探索 URL、HTTP、服务发现与请求响应
48 1