Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >在颤动中将表单发送到API

在颤动中将表单发送到API
EN

Stack Overflow用户
提问于 2020-09-17 09:12:44
回答 1查看 44关注 0票数 0

我还在努力适应颤动。我有一个用户的注册表,当用户单击按钮时,我希望所有文本都发送到我的link.But接口。有没有简单的方法可以做到这一点?或者我应该一个接一个地发短信?我的文本不应该是空的。我怎么才能提供这个呢?

我将在将来调用我的api,并且我想发送用户将在此处输入我的数据的文本。

代码语言:javascript
运行
AI代码解释
复制
        Future<RegisterComplete> createRegisterComplete(
        String email, String language) async {
      final http.Response response = await http.post(
        'MY API URL',
        headers: <String, String>{'Content-Type': 'application/json'},
        body: jsonEncode(<String, String>{
          'firstName': ' ',
          'lastName': ' ',
          'password': ' ',
          'countryCode': ' ',
          'language': ' ',
        }),
      );
      if (response.statusCode == 201) {
        return RegisterComplete.fromJson(json.decode(response.body));
      } else {
        print('Here:${response.statusCode}');
        throw Exception('Failed to load page');
      }
    }
    
    class RegisterPage extends StatefulWidget {
   
      @override
      _RegisterPageState createState() => _RegisterPageState();
    }
    
    class _RegisterPageState extends State<RegisterPage> {
      Future<ConfirmCode> _confirmCode;
      var textFieldPasswordController = TextEditingController();
      var textFieldConfirmPasswordController = TextEditingController();
 var cityController=TextEditingController();
  var nameController=TextEditingController();
  var surnameController=TextEditingController();
    
      @override
      Widget build(BuildContext context) {
        return Scaffold(
          body: SafeArea(
            child: SingleChildScrollView(
              child: Column(
                children: [
                  Padding(
                    padding: const EdgeInsets.all(16.0),
                    child: Row(
                      mainAxisAlignment: MainAxisAlignment.spaceBetween,
                      children: [
                        IconButton(
                          icon: Icon(Icons.arrow_back),
                          onPressed: () {
                            Navigator.pop(context);
                          },
                        ),
                        Text(
                          allTranslations.text('login'),
                          style: TextStyle(
                            fontSize: 13,
                            fontWeight: FontWeight.w600,
                            color: HexColor('#4A8EB0'),
                          ),
                        ),
                      ],
                    ),
                  ),
                  Text(
                      allTranslations.text('signUp'),
                    style: TextStyle(fontSize: 26, fontWeight: FontWeight.bold),
                  ),
                  _paddingWidget('E-mail', 'E-mail',emailController),
                 
                _paddingPasswordWidget(allTranslations.text('password'), allTranslations.text('password')),
                  _paddingWidget('City', 'City',cityController),
                  _paddingWidget('Name', 'Name',nameController),
                  _paddingWidget('Surname', 'Surname',surnameController),
                  Padding(
                    padding: EdgeInsets.all(16.0),
                    child: Container(
                      height: 50.0,
                      decoration: BoxDecoration(
                        borderRadius: BorderRadius.circular(16),
                        color: HexColor('#B0B0B0'),
                        boxShadow: [
                          BoxShadow(
                            color: Colors.black.withOpacity(0.05),
                            blurRadius: 6,
                            offset: Offset(0, 2), // changes position of shadow
                          ),
                          BoxShadow(
                            color: Colors.black.withOpacity(0.1),
                            blurRadius: 20,
                            offset: Offset(0, 10), // changes position of shadow
                          ),
                        ],
                      ),
                      child: InkWell(
                        onTap: () {
                          setState(() {
                          BUTTON I USE FOR SİGN UP
                          });
                        },
                        child: Center(
                          child: Text(
                            allTranslations.text('signUp'),
                            style: TextStyle(
                              fontSize: 16,
                              color: Colors.white,
                              fontWeight: FontWeight.bold,
                            ),
                          ),
                        ),
                      ),
                    ),
                  ),
                ],
              ),
            ),
          ),
        );
      }
    
      _paddingWidget(String hintTextStr, String labelTextStr,TextEditingController _controller) {
        return Padding(
          padding: EdgeInsets.only(top: 15, left: 22, right: 22),
          child: TextFormField(
            controller: _controller,
            keyboardType: TextInputType.text,
            style: TextStyle(
              color: HexColor('#868686'),
            ),
            decoration: CommonInputStyle.textFieldStyle(
              hintTextStr: hintTextStr,
              labelTextStr: labelTextStr,
            ),
          ),
        );
      }
    
      _buttonWidget(String title,GestureTapCallback onPressed) {
        return Container(
          height: 40,
          width: 160,
          child: RaisedButton(
            child: Text(
              title,
              style: TextStyle(color: Colors.white),
            ),
            onPressed: onPressed,
            color: HexColor('#4A8EB0'),
            shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(10)),
          ),
        );
      }
    
      _paddingPasswordWidget(String hintTextStr, String labelTextStr) {
        return Padding(
          padding: EdgeInsets.only(top: 15, left: 22, right: 22),
          child: TextFormField(
            controller: textFieldPasswordController,
            keyboardType: TextInputType.text,
            style: TextStyle(
              color: HexColor('#868686'),
            ),
            decoration: CommonInputStyle.textFieldStyle(
              hintTextStr: hintTextStr,
              labelTextStr: labelTextStr,
            ),
            obscureText: true,
          ),
        );
      }
EN

回答 1

Stack Overflow用户

发布于 2020-09-17 09:30:16

首先。

这个方法应该包含var data,它将成为你身体的处理器。

如下所示:

代码语言:javascript
运行
AI代码解释
复制
Future<RegisterComplete> createRegisterComplete(
    String email, String language, var data) async {
  final http.Response response = await http.post(
    'MY API URL',
    headers: <String, String>{'Content-Type': 'application/json'},
    body: jsonEncode(data),
  );
  if (response.statusCode == 201) {
    return RegisterComplete.fromJson(json.decode(response.body));
  } else {
    print('Here:${response.statusCode}');
    throw Exception('Failed to load page');
  }
}

现在,这允许您实际包装来自TextEditingControllers的所有数据,因此您可以执行以下操作:

代码语言:javascript
运行
AI代码解释
复制
child: InkWell(
                        onTap: () async {
                          setState(() {
                          var data = {
                            'firstName': nameController.text,
'lastName': lastNameController.text,
          'password': passwordController.text,
          'countryCode': countryCodeController.text,
          'language': languageController.text,

                          }

// here you do an actual API call
   await createRegisterComplete(emailController.text, languageController.text, data);


                          });
                        },

但有一种更好的方法来实现这一点,那就是使用存储库来处理这样的事情。

查看博客-> https://medium.com/@cesarmcferreira/flutter-mvvm-architecture-using-dependency-injection-di-state-management-repository-pattern-92a4ef6ddfc3

但还有更多的例子

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63934866

复制
相关文章
文本分类又来了,用 Scikit-Learn 解决多类文本分类问题
在商业领域有很多文本分类的应用,比如新闻故事通常由主题来分类;内容或产品常常被打上标签;基于如何在线谈论产品或品牌,用户被分成支持者等等。
AI研习社
2018/07/26
1.1K0
文本分类又来了,用 Scikit-Learn 解决多类文本分类问题
机器学习-文本分类(2)-新闻文本分类
参考:https://mp.weixin.qq.com/s/6vkz18Xw4USZ3fldd_wf5g
西西嘛呦
2020/08/26
9830
机器学习-文本分类(2)-新闻文本分类
深度学习解决文本分类问题的最佳实践
文本分类(Text classification)描述了一类常见的问题,比如预测推文(Tweets)和电影评论的情感,以及从电子邮件中区分出垃圾邮件。
StoneDemo
2018/02/07
1.5K0
【文本分类】基于双层序列的文本分类模型
导语 PaddlePaddle提供了丰富的运算单元,帮助大家以模块化的方式构建起千变万化的深度学习模型来解决不同的应用问题。这里,我们针对常见的机器学习任务,提供了不同的神经网络模型供大家学习和使用。本周推文目录如下: 周一:【点击率预估】 Wide&deep 点击率预估模型 周二:【文本分类】 基于DNN/CNN的情感分类 周三:【文本分类】 基于双层序列的文本分类模型 周四:【排序学习】 基于Pairwise和Listwise的排序学习 周五:【结构化语义模型】 深度结构化语义模型 文本分类是自然语言
用户1386409
2018/03/15
1.4K0
【文本分类】基于双层序列的文本分类模型
NLP文本分类
其实最近挺纠结的,有一点点焦虑,因为自己一直都期望往自然语言处理的方向发展,梦想成为一名NLP算法工程师,也正是我喜欢的事,而不是为了生存而工作。我觉得这也是我这辈子为数不多的剩下的可以自己去追求自己喜欢的东西的机会了。然而现实很残酷,大部分的公司算法工程师一般都是名牌大学,硕士起招,如同一个跨不过的门槛,让人望而却步,即使我觉得可能这个方向以后的路并不如其他的唾手可得的路轻松,但我的心中却一直有一股信念让我义无反顾,不管怎样,梦还是要有的,万一实现了呢~
UM_CC
2022/09/22
4750
NLP文本分类
TextCNN(文本分类)
(2)词转成向量(word2vec,Glove,bert,nn.embedding)
全栈程序员站长
2022/09/15
5910
TextCNN(文本分类)
新闻文本分类
一个很粗糙的新闻文本分类项目,解决中国软件杯第九届新闻文本分类算法的问题,记录了项目的思路及问题解决方法
客怎眠qvq
2022/11/01
1.2K0
新闻文本分类
BERT文本分类
本文使用的是RoBERTa-wwm-ext,模型导入方式参见https://github.com/ymcui/Chinese-BERT-wwm。由于做了全词遮罩(Whole Word Masking),效果相较于裸的BERT会有所提升。
luxuantao
2021/02/24
1.9K0
textRNN/textCNN文本分类
textRNN指的是利用RNN循环神经网络解决文本分类问题,文本分类是自然语言处理的一个基本任务,试图推断出给定文本(句子、文档等)的标签或标签集合。
大数据技术与机器学习
2019/12/05
2.3K0
大话文本分类
概述 文本分类是自然语言处理的重要应用,也可以说是最基础的应用。常见的文本分类应用有:新闻文本分类、信息检索、情感分析、意图判断等。本文主要针对文本分类的方法进行简单总结。 01 — 传统机器学习方法 分类问题一般的步骤可以分为特征提取、模型构建、算法寻优、交叉验证等。对于文本而言,如何进行特征提取是一个很重要也很有挑战性的问题。文本的特征是什么,如何量化为数学表达呢。 最开始的文本分类是基于规则的,特征就是关键词,例如足球在体育类出现的次数多,就将含有足球这一关键词的文本氛围体育。后来为了便于计算,通过
CodeInHand
2018/03/26
1.6K0
大话文本分类
长文本分类
在NLP领域中,文本分类舆情分析等任务相较于文本抽取,和摘要等任务更容易获得大量标注数据。因此在文本分类领域中深度学习相较于传统方法更容易获得比较好的效果。 文本分类领域比较重要的的深度学习模型主要有FastText,TextCNN,HAN,DPCNN。
故事尾音
2019/12/18
1.6K0
文本分类算法之–贝叶斯文本分类算法[通俗易懂]
例如文档:Good good study Day day up可以用一个文本特征向量来表示,x=(Good, good, study, Day, day , up)。在文本分类中,假设我们有一个文档d∈X,类别c又称为标签。我们把一堆打了标签的文档集合<d,c>作为训练样本,<d,c>∈X×C。例如:<d,c>={Beijing joins the World Trade Organization, China}对于这个只有一句话的文档,我们把它归类到 China,即打上china标签。
全栈程序员站长
2022/09/05
6690
GolVe向量化做文本分类向量化文本分类
第一种是常规方法的one-hot-encoding的方法,常见的比如tf-idf生成的0-1的稀疏矩阵来代表原文本:
sladesal
2018/10/08
1.7K0
GolVe向量化做文本分类向量化文本分类
文本分类(六):使用fastText对文本进行分类--小插曲
http://blog.csdn.net/lxg0807/article/details/52960072
bear_fish
2018/09/19
1.7K0
NLTK-007:分类文本(文档情感分类)
之前我们看了几个例子,那里文档已经按类别标记。使用这些语料库,我们可以建立分类器。自动给新文档添加适当的类别标签。 首先我们构造一个标记了相应类别的文档清单,对于这个例子,我选择了nltk中的电影评论语料库,将每个评论分为正面或者负面。
李玺
2021/11/22
4090
NLTK-007:分类文本(文档情感分类)
【文本分类】基于DNN/CNN的情感分类
导语 PaddlePaddle提供了丰富的运算单元,帮助大家以模块化的方式构建起千变万化的深度学习模型来解决不同的应用问题。这里,我们针对常见的机器学习任务,提供了不同的神经网络模型供大家学习和使用。本周推文目录如下: 周一:【点击率预估】 Wide&deep 点击率预估模型 周二:【文本分类】 基于DNN/CNN的情感分类 周三:【文本分类】 基于双层序列的文本分类模型 周四:【排序学习】 基于Pairwise和Listwise的排序学习 周五:【结构化语义模型】 深度结构化语义模型 文本分类是自然语言
用户1386409
2018/03/15
1.8K0
【文本分类】基于DNN/CNN的情感分类
二分类问题:基于BERT的文本分类实践!附完整代码
寄语:Bert天生适合做分类任务。文本分类有fasttext、textcnn等多种方法,但在Bert面前,就是小巫见大巫了。
Datawhale
2020/03/19
6.1K1
二分类问题:基于BERT的文本分类实践!附完整代码
文本分类算法综述
文本分类大致有两种方法:一种是基于训练集的文本分类方法;另一种是基于分类词表的文本分类方法。两种方法出自不同角度的研究者,训练集法更多的来自计算机或人工智能研究领域,而分类表法则更多地来自突出情报领域。本文主要介绍前一种。
全栈程序员站长
2022/06/27
6060
LSTM文本分类实战
作者:王千发 编辑:龚 赛 什么是文本分类 1 文本分类在文本处理中是很重要的一个模块,它的应用也非常广泛,比如:垃圾过滤,新闻分类,等等。传统的文本分类方法的流程基本是: 预处理:首先进行分词,然后是除去停用词; 将文本表示成向量,常用的就是文本表示向量空间模型; 进行特征选择,这里的特征就是词语,去掉一些对于分类帮助不大的特征。常用的特征选择的方法是词频过滤,互信息,信息增益,卡方检验等; 接下来就是构造分类器,在文本分类中常用的分类器一般是SVM,朴素贝叶斯等; 训练分类器,后面
机器学习算法工程师
2018/03/06
4.9K0
LSTM文本分类实战
文本分类六十年
文本分类是自然语言处理中最基本而且非常有必要的任务,大部分自然语言处理任务都可以看作是个分类任务。近年来,深度学习所取得的前所未有的成功,使得该领域的研究在过去十年中保持激增。这些文献中已经提出了许许多多的算法模型、基准数据集一集评测指标,因此需要一个对这个领域进行全面而且跟进趋势的调查。这里我们介绍基于机器学习和深度学习的文本分类,主要内容来自北航、伊利诺伊大学等学者联合发表论文 A Survey on Text Classification: From Shallow to Deep Learning。
AI科技大本营
2020/12/09
1.1K0
文本分类六十年

相似问题

验证损失曲线是平坦的,训练损失曲线高于验证误差曲线

10

绘制训练和验证损失曲线?

127

验证损失和训练损失曲线,可以接受吗?

117

训练损失改善,但验证提前收敛

22

如何正确绘制训练和验证集的损失曲线?

12
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档