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

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

介绍

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

站点Post和Get如何打断点

找到你创建的项目点击调试-> 附加到进程

找到w3wp然后附加上打断点即可(找不到的话就重新开启IIS的站点,然后重新生成一下项目再试试)

测试

测试代码如下

因为我这里使用的是Unity所以测试我也是使用的Unity去做的测试,这里先放一个简单的代码仅供测试

直接调用PostTest发送自己部署的服务站点即可测试

csharp 复制代码
    /// <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变量名一致

总结

感谢大家的支持!

相关推荐
麓殇⊙2 小时前
redis--黑马点评--用户签到模块详解
前端·数据库·redis
大雷神3 小时前
站在JS的角度,看鸿蒙中的ArkTs
开发语言·前端·javascript·harmonyos
杨荧8 小时前
基于大数据的美食视频播放数据可视化系统 Python+Django+Vue.js
大数据·前端·javascript·vue.js·spring boot·后端·python
cmdyu_9 小时前
如何解决用阿里云效流水线持续集成部署Nuxt静态应用时流程卡住,进行不下去的问题
前端·经验分享·ci/cd
WordPress学习笔记9 小时前
根据浏览器语言判断wordpress访问不同语言的站点
前端·javascript·html
yuanmenglxb20049 小时前
解锁webpack核心技能(二):配置文件和devtool配置指南
前端·webpack·前端工程化
步、步、为营9 小时前
.NET 的 Native AOT 现在是什么样的?
.net
JefferyXZF9 小时前
Next.js 路由导航:四种方式构建流畅的页面跳转(三)
前端·全栈·next.js
啃火龙果的兔子9 小时前
React 多语言(i18n)方案全面指南
前端·react.js·前端框架