【问题标题】:Flutter Http Request: Invalid response status codeFlutter Http Request:响应状态码无效
【发布时间】:2019-05-18 08:00:51
【问题描述】:

我在 Flutter 中进行了 http 调用,以检查登录页面中的用户名和密码。 如果我输入正确的用户名和密码,我会得到一个状态码 200 OK!到目前为止一切都很好。

但是如果我输入了错误的用户名和密码,为了得到我的状态码 901,flutter 会抛出一个异常:无效的响应状态码! 也许 http 包只适用于常规状态代码(而不是个人状态代码)?

【问题讨论】:

    标签: dart flutter


    【解决方案1】:

    您绝对不想返回 901。您应该返回一个有效的理解状态代码。例如,我会使用 403(禁止)。可以在维基百科条目https://en.wikipedia.org/wiki/List_of_HTTP_status_codes 中找到一个易于理解的列表。

    【讨论】:

    • 谢谢 - 你是对的!但是有什么方法可以创建单独的状态码,flutter 也接受?
    • 我会返回 403 代码,然后是标题中的详细信息。没有理由为 Forbidden 使用 403。
    • 登录只是一个例子,但我有一个用例,我需要使用一个单独的状态码。那么我该如何用颤振处理呢?
    • 您需要将其映射到官方代码之一,并在标题中添加更多数据以区分您的子案例。
    【解决方案2】:

    你应该返回一个有效的http状态码,否则它会返回你提到的错误:

    https://github.com/dart-lang/http/blob/master/lib/src/base_response.dart

    【讨论】:

    • 谢谢,但您知道是否有任何方法可以使用自定义状态码?
    • 当然,您只需要创建自己的 http 客户端。
    猜你喜欢
    • 1970-01-01
    • 2016-02-08
    • 2016-01-18
    • 2017-09-26
    • 2016-04-14
    • 1970-01-01
    • 2019-05-03
    • 2017-03-15
    • 2017-05-10
    相关资源
    最近更新 更多