当前位置: 首页 > article >正文

ASP.NET Web(.Net Framework)POST无法正常接收数据

ASP.NET Web(.Net Framework)POST无法正常接收数据

  • 介绍
  • 站点Post和Get如何打断点
  • 测试
    • 测试代码如下
    • 服务器站点Post方法修改
    • 原因总结
  • 总结

介绍

这一篇文章主要是讲一下之前搭建的HTTP站点POST无法正常接收数据,如果还不知道怎么搭建HTTP站点的去看下我之前的文章 ASP.NET Web(.Net Framework) Http服务器搭建以及IIS站点发布

站点Post和Get如何打断点

找到你创建的项目点击调试-> 附加到进程在这里插入图片描述
找到w3wp然后附加上打断点即可(找不到的话就重新开启IIS的站点,然后重新生成一下项目再试试)
在这里插入图片描述

测试

测试代码如下

因为我这里使用的是Unity所以测试我也是使用的Unity去做的测试,这里先放一个简单的代码仅供测试
直接调用PostTest发送自己部署的服务站点即可测试

    /// <summary>
    /// Post请求
    /// </summary>
    /// <param name="url"></param>
    /// <param name="json"></param>
    private void PostTest()
    {
        JsonData jsonData = new JsonData();
        jsonData["UserName"] = "ck";
        jsonData["Pwd"] = "ck123";
        WWWForm www = new WWWForm();
        www.AddField("",jsonData.ToJson());
        
        UnityWebRequest req = UnityWebRequest.Post("url", www);

        StartCoroutine(Request(req));
    }

	/// <summary>
    /// 请求服务器
    /// </summary>
    /// <param name="req"></param>
    /// <returns></returns>
    private IEnumerator Request(UnityWebRequest req)
    {
        yield return req.SendWebRequest();

        //没有错误
        if (string.IsNullOrEmpty(req.error))
        {
            if (req.downloadHandler.text == "null")
            {
                    Debug.LogError("未请求到用户");
            }
            else
            {
					Debug.LogError(req.downloadHandler.text);
            }
        }
        //有错误
        else
        {
				Debug.LogError(req.error);
        }
    }

服务器站点Post方法修改

为什么有些可以成功发送,有些发送不过来数据呢
我将站点的Post协议修改如下,加上了string的返回值和修改了参数名
FormBody你可以理解成Unity中的WWWForm,但是注意WWWForm在调用AddField(“”,jsonData)时第一个参数必须为空,不可写入其他值,不然无法正常接收到数据
在这里插入图片描述

原因总结

AddField的首个参数需要传空"",Post的参数名称最好和你要创建的 JsonData变量名一致

总结

感谢大家的支持!


http://www.kler.cn/a/418707.html

相关文章:

  • 【赵渝强老师】PostgreSQL的段、区和块
  • JAVAWeb之CSS学习
  • 【真正离线安装】Adobe Flash Player 32.0.0.156 插件离线安装包下载(无需联网安装)
  • 【QNX+Android虚拟化方案】129 - USB眼图参数配置
  • 【Android】EventBus的使用及源码分析
  • Paper -- 建筑物高度估计 -- 基于深度学习、图像处理和自动地理空间分析的街景图像建筑高度估算
  • 【Linux】进程地址空间(虚拟地址vs物理地址vs页表)
  • 【Python实战进阶】——深度学习网络之LSTM理论与实战
  • Flask+Minio实现断点续传技术教程
  • CSS选择器学习总结
  • git使用文档手册
  • 递归:牛牛学数列:JAVA
  • 代码之丑第一期-缩进
  • 【青牛科技】电动工具调速控制电路芯片(相位控制电路)D211芯片描述
  • C#窗体简单登录
  • C++之虚函数
  • 力扣3373.连接两棵树后最大目标节点数目II
  • 网页开发的http基础知识
  • Mysql实现定时自动备份(Windows环境)
  • 如何正确处理和解析 GitHub API 返回的 JSON 数据:详细指南与示例
  • 多线程相关案例
  • 文本内容处理命令和正则表达式
  • 使用springBoot的freemarker生成按模板生成word
  • pycharm(一)安装
  • electron学习 渲染进程与主进程通信
  • ArrayList和LinkedList的区别(详解)