Flutter - 处理 POST 请求中的状态代码 302

2023-12-25

我正在尝试发送postFlutter 中的请求DIO包裹。

这是请求:

getSessionId() async {

  var csrf = await getCsrftoken();

  var dio = new Dio(new Options(
      baseUrl: "http://xxxxxxx/accounts/login/",
      connectTimeout: 5000,
      receiveTimeout: 100000,
      // 5s
      headers: {
        'Cookie': "csrftoken=" + csrf
      },
      contentType: ContentType.JSON,
      // Transform the response data to a String encoded with UTF8.
      // The default value is [ResponseType.JSON].
      responseType: ResponseType.PLAIN
  ));

  var response;
  response = await dio.post("http://xxxxxxx/accounts/login/",
    data: {
      "username": "xxxxx",
      "password": "xxxxx",
      "csrfmiddlewaretoken" : csrf
    },
    options: new Options(
        contentType: ContentType.parse("application/x-www-form-urlencoded")),
  );

  print("StatusCode: ");
  print(response.statusCode);
  print("Response cookie: ");   //THESE ARE NOT PRINTED
  print(response.headers);
}

请求后我得到:

E/flutter ( 4567): [ERROR:flutter/shell/common/shell.cc(181)] Dart Error: Unhandled exception:
    E/flutter ( 4567): DioError [DioErrorType.RESPONSE]: Http status error [302]
    E/flutter ( 4567): #0      getSessionId (file:///C:/get_order/lib/main.dart:36:14)
    E/flutter ( 4567): <asynchronous suspension>

从这个请求我只需要得到sessionidcookie,但函数因未处理的异常而停止。


我是这样解决的:

Add followRedirects: false and validateStatus: (status) { return status < 500;}到请求。像这样:

var response = await Dio().post("http://myurl",
    data: requestBody,
    options: Options(
        followRedirects: false,
        validateStatus: (status) { return status < 500; }
    ),
);

这样你就可以从302 every headers和别的。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Flutter - 处理 POST 请求中的状态代码 302 的相关文章

  • 当 flutter 应用程序终止时,普通推送通知会默默出现或根本不出现

    我在 nodejs 上使用 firebase admin 向用户发送推送通知 https firebase google com docs admin setup https firebase google com docs admin s
  • 将“Map>”转换为“Map>”

    我想投一个Map
  • 如何在 VS Code 中打开模拟器或连接 LD Player 以实现 flutter?

    我想开发 flutter 应用程序 但我的笔记本电脑没有足够的 RAM 只有 4 GB 因此 经过在互联网上进行大量广泛的研究 我安装并设置了 flutter sdk android sdk 和 VS Code 但是 当我尝试运行示例应用程
  • 如何在使用cmake完成make后打印消息?

    我正在尝试使用 CMake 完成构建过程后打印消息 我只是想在之后通知用户make命令已完成 没有任何错误 我该怎么做 我试过add custom target 但我无法选择何时跑步 另外 我尝试过add custom command 它再
  • 如何更改文本字段颤动内部的值?

    我有一个TextEditingController如果用户单击按钮 它就会填写信息 我似乎不知道如何更改 a 中的文本Textfield or TextFormField 有解决办法吗 只需更改text财产 TextField contro
  • 更改语言 Flutter 的按钮

    我正在 Flutter 中构建一个应用程序 到目前为止 我正在使用 JSON 国际化 其中应用程序的语言基于用户手机中默认的语言 它工作得很好 但我想给用户有机会在不更改手机系统语言设置的情况下更改语言 只需单击按钮 然后应用程序即可更改语
  • BottomAppBar浮动操作按钮凹口/插入不透明

    我添加了一个BottomAppBar到材质应用程序中的脚手架 并且我添加了一个在中心带有插图的工厂 代码看起来有点像这样 Scaffold bottomNavigationBar BottomAppBar color Theme of co
  • 打开键盘会导致有状态小部件重新初始化

    我在 Stable 分支中使用 Flutter 1 2 1 为了说明我的问题 假设我有页面 A 和 B A 使用以下命令导航到 BNavigator pushB 使用以下命令导航回 ANavigator pop 两者都是有状态的小部件 当我
  • 颤振预览图标在代码完成时显示损坏的资源图像

    当我第一次安装 flutter 和 dart 扩展时 图标预览工作正常 但是当我在没有 wi fi 的环境中开发时 图标预览损坏了 不确定这是问题所在 我尝试重新安装所有与 flutter 和 dart 相关的扩展 但问题仍然存在 如果有任
  • 没有脚手架的 DefaultTabController?

    我正在尝试使用DefaultTabController在一些小部件的中间 所以我的TabBar不能在AppBar并且必须关闭一些小部件 所以我的问题是当我使用时TabBarView它崩溃了 这是一个 Flutter 示例的示例 但没有找到如
  • Android Gradle 问题 - Flutter / Dart

    我的 Gradle 同步有问题 我使用 IntelliJ 和 Android Studio 构建 Flutter Dart 应用程序 我添加了 2 个新的依赖项 现在 Gradle 出现了问题 在 Android Studio 中一切正常
  • MS Access 执行 POST Web 请求

    在我的 MS Access 应用程序中 我需要定期向我的网络服务器发送一批信息 我不需要任何花哨的东西 比如 SOAP XML RPC 或任何东西 只需一个简单的 POST 页面请求就足够了 我用谷歌搜索了一下 但找不到任何真正有用的东西
  • C# 构建一个 webservice 方法,它接受 POST 方法,如 HttpWebRequest 方法

    我需要一个接受 POST 方法的 Web 服务 访问我的服务器正在使用 POST 方法 它向我发送了一个 xml 我应该用一些 xml 进行响应 另一方面 当我访问他时 我已经使用 HttpWebRequest 类进行了管理 并且工作正常
  • NestedScrollView 与 ListView 中的粘性选项卡

    布局按预期工作 但以下情况除外 当我滚动一页时 第二页也会滚动 没有那么多 但足以掩盖第一个项目 我可以想象它与 NestedScrollView 有关 但我不知道如何继续 import package flutter material d
  • 如何让“material-dropdown-select”显示当前模型值

    使用 AngularDart 角度组件 https github com dart lang angular components 我需要创建一个下拉列表 其中填充了一小部分项目 使其工作 并自动设置为模型中对象的当前选择 尚未使其工作 我
  • 如何知道 Dart 中的复选框或单选按钮是否被选中?

    我有一个复选框和一个单选按钮组 我想知道是否选中了该复选框以及选择了哪个单选按钮 我如何在 Dart 中做到这一点 假设我们有这样的 HTML
  • Flutter - 构建失败并出现异常

    当我启动我的应用程序时 我收到此错误消息 自上次运行以来我没有进行任何更改 当时一切都很好 有人知道如何解决这个问题吗 谢谢 FAILURE Build failed with an exception 什么地方出了错 无法确定任务 app
  • 如何在Flutter中使用多个ChangeNotifierProvider?

    我最近开始使用provider对于我的状态管理 我知道如何一次使用一个 class Home extends StatelessWidget override Widget build BuildContext context return
  • 如何使用 Chai Http 发布对象数组

    我正在尝试发布一个对象数组ChaiHttp https github com chaijs chai http像这样 agent post route to api send locations lat lat1 lon lon1 lat
  • Flutter 网络图像作为 Google 地图标记

    我想在屏幕上的谷歌地图上添加网络图像作为标记 API确实支持一个功能Bitmapdescriptor fromBytes 但是 我不知道如何将它与网络图像一起使用 BitmapDescriptor fromBytes byteData 首先

随机推荐

  • 自动生成与现有表匹配的用户定义表类型

    我的数据库中已经存在几个表 其中一些有相当多的专栏 我想制作一些存储过程来对这些表执行合并语句 为此 我希望存储过程的参数是用户定义的表类型 我可以编写每个表的脚本并将其修改为用户定义的表类型创建语句 但我真正想要的是一种从数据库中现有表生
  • 如何从存储过程返回bool

    我正在尝试弄清楚如何编写返回布尔值的存储过程 我开始编写以下返回 int 的代码 USE Database GO Object StoredProcedure dbo ReturnInt Script Date 09 30 2010 09
  • IntraWeb 的 SSL 问题 - Delphi 2007

    最近一段时间 我一直在尝试在 IW 程序上使用 SSL 但一直遇到 无法加载 SSL 库 的问题 我已经遵循了我能找到的关于这个主题的每一条建议 但仍然没有快乐 我已经在本地目录和 system32 中尝试了建议的 DLL 有人对我应该使用
  • 将 null 分配给 JSON 字段而不是空字符串

    由于空字符串是 Go 的零 默认值string 我决定将所有此类字段定义为interface 反而 例如 type student struct FirstName interface json first name MiddleName
  • 从 Kotlin 活动中获取额外的字符串

    我想从意图中获得另一个活动中的额外字符串 这是创造我的意图的方式 val intent Intent this Main2Activity class java intent putExtra samplename abd startAct
  • firestore数据存储在子集合中

    我正在 Firestore 中制作一个 聊天演示 来保存消息 我这样做是这样的 FirebaseFirestore getInstance collection Consts R CHAT ROOM document finalChatRo
  • 交换不同长度字符串中特定位置的字符

    我一直在尝试学习 sed 我在这里找到的示例用于交换从 05082012 到 20120805 的日期 但我无法使它们适应我当前的需要 我需要将 IP 地址 10 4 13 22 转换为 nsupdate 脚本的反向查找 22 13 4 1
  • XQuery 存在检查选择 sql 查询

    我有一个带有 xml 列的 sql 表 其中包含如下 xml 的值
  • 如何计算没有循环的矩阵的欧几里德长度?

    看起来这个问题的答案应该很简单 但我很困惑 我有一个 Nx3 矩阵 其中第 1 2 和 3 列是第 n 个项目的 X Y 和 Z 坐标 我想计算从原点到该项目的距离 在非矢量化形式中 这很容易 距离 范数 x y z or 距离 sqrt
  • Laravel NotFoundHttpException

    我对这条路线有疑问 Route get va uniqueid AdminController VaShow gt name va 并在控制器中 public function VaShow uniqueid 123 dd uniqueid
  • 在 Flow 中输入“camel caser”:方差问题?

    尝试流链接 https flowtype org try 0PQKgBAAgZgNg9gdzCYAoVAXAngBwKZgBSAygPIByYAvGAHYCuMMYAPmAM4YBOAlrQOas69ALYAjPFyFi4cGHgCGtIQ
  • 如何使用 Python 在文本文件中查找单词

    我是 python 新手 正在尝试在 python 中创建一个函数 该函数查找文本文件中出现该单词的行并打印行号 该函数将文本文件名和单词列表作为输入 我不知道从哪里开始 Example index notes txt isotope pr
  • 版本控制(即 Subversion)适用于文档跟踪吗? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我负责大约 100 多个文档 word 文档 而不是源代码 需要由我部门的不同人员进行修改 目前 所有文档都位于一个共享文件夹中 它们将在其中检
  • 在django中传递json并反序列化表单

    接下来的问题是 我使用 ajax 向服务器发送一些发布数据 该数据看起来像 data form this serialize some array 2 3 4 1 如何在django中获取表单对象 request POST form 返回带
  • Twitter Bootstrap:全宽 div 的列重新排序

    这看起来是一个简单的任务 但无法让它发挥作用 我需要为平板电脑重新排序 div 宽度为 100 请看一下下面的内容fiddle http jsfiddle net 711p2dLb 看看我的意思 原文参考 div class row div
  • 相同密度的不同 Android 设备上的滑动(滑动)速度不同

    我正在编写自己的图像查看器 使用户能够向左 向右滑动以查看下一个 上一个图像 我想根据投射速度制作图像变化的动画 为了检测猛击手势及其速度 我遵循了这个基本手势检测 https stackoverflow com questions 937
  • 在 OpenGL 和 CUDA 之间共享纹理

    我在 OpenGL 和 CUDA 之间共享数据如下 GLuint buffer glGenBuffers 1 buffer Some image is bound to this texture buffer at some point c
  • awk 两个正则表达式条件 - 结构复杂的复杂事务列表 csv

    我的原始输入文件是预订交易列表 我对以下两个部分中的行感兴趣 a 交易和b 退款 它们始终位于 CSV 的底部并且是结构化的 我可以通过正则表达式条件 transaction print 跳过事务部分上方的所有行 我想根据 csv 中的部分
  • 是否可以修改系统存储过程?

    我想改变sp helpindex系统程序 或者更确切地说用我的版本替换它 原因是 显示索引号 显示包含的列 显示过滤器定义 显示填充因子 显示索引大小 还显示堆信息 另外 有趣的是 我的版本性能更好 更快 读取更少 没有光标 我尝试了以下方
  • Flutter - 处理 POST 请求中的状态代码 302

    我正在尝试发送postFlutter 中的请求DIO包裹 这是请求 getSessionId async var csrf await getCsrftoken var dio new Dio new Options baseUrl htt