写了一个一般处理程序来做接口,由于字段Content是文本,长度可能很长,鉴于这个原因,所以不能GET请求

所以问题来了,当我改成POST请求,自己使用HttpHelper类来写了一个Demo

code
var result = new HttpHelper().GetHtml(new HttpItem()
{
URL = "http://localhost:24885/Comment.ashx",
Method = "POST",
Postdata = "action=insert_comment&art_id=1&art_title=文章标题&cid=&uid=1&unick=kerwin&content=你好&type=1&reply_id=&reply_nick=&parent_uid=&parent_nick=&parent_cid=&ip="
});
调式发现 Image 在context.Request["action"]、context.Request.Form以及context.Request.QueryString都获取不到上面的Postdata 但是我们可以在context.Request.InputStream参数中看见,InputStream是有长度的156 或者在context.Request.TotalBytes看见有数据 Image 所以我们可以通过以下代码获取参数 code
var pams = System.Text.Encoding.UTF8.GetString(context.Request.BinaryRead(context.Request.TotalBytes))
注意:通过上面这行代码获取参数只能获取一次,第二次获取则二进制数据不存在 我们可以对其进行解析,目前所知pams得到的数据有json序列化的的字符串,此时我们可以直接反序列化,但是如果请求的时候指定了Content-Type为application/json; charset=utf8或者为application/x-www-form-urlencoded;charset=utf-8此时,pams得到的并不是json序列化的字符串,而是含有断点续传的Boundary

一般处理程序(ashx)获取不到POST请求的参数问题的更多相关文章

  1. ASP.NET MVC 项目中 一般处理程序ashx 获取Session

    1-在 aspx和aspx.cs中,都是以Session["xxx"]="aaa"和aaa=Session["xxx"].ToString( ...

  2. jQuery获取一般处理程序(ashx)的JSON数据

    昨天有在开发的软件生产线生产流程,RFID扫描IC卡的数据,当中有用到jQuery获取一般处理程序(ashx)的JSON数据.今有把它写成一个小例子,望需要的网友能参考. 在网站中,创建一个一般应用程 ...

  3. .net mvc 站点自带简易SSL加密传输 Word报告自动生成(例如 导出数据库结构) 微信小程序:动画(Animation) SignalR 设计理念(一) ASP.NET -- WebForm -- ViewState ASP.NET -- 一般处理程序ashx 常用到的一些js方法,记录一下 CryptoJS与C#AES加解密互转

    .net mvc 站点自带简易SSL加密传输   因项目需要,传输数据需要加密,因此有了一些经验,现简易抽出来分享! 请求:前端cryptojs用rsa/aes 或 rsa/des加密,后端.net ...

  4. ASP.NET -- 一般处理程序ashx

    ASP.NET  --   一般处理程序ashx 如果在一个html页面向服务器端请求数据,可用ashx作为后台页面处理数据.ashx适合用作数据后台处理,相当于WebForm中的aspx.cs文件或 ...

  5. 学习笔记05一般处理程序ashx

    1.获取由表单传过来的参数var value1 = HttpContext.Request["健"]; 2.使得网站目录下的相对路径转化为绝对路径:(用于文件操作)var file ...

  6. 一般处理程序如何获取session值

    1.要在一般处理程序中获取其他页面的session值,需要引用名空间: using System.Web.SessionState; 2.然后继承一个接口:IRequiresSessionState ...

  7. 要在一般处理程序中获取其他页面的session值

    1.要在一般处理程序中获取其他页面的session值,需要引用名空间: using System.Web.SessionState; 2.然后继承一个接口:IRequiresSessionState, ...

  8. Android拦截并获取WebView内部POST请求参数

    起因: 有些时候自家APP中嵌入的H5页面并不是自家的.但是很多时候又想在H5不知情的情况下获取H5内部请求的参数,这应该怎么做到呢? 带着这个疑问,就有了这篇博客. 实现过程: 方案一: 最开始想到 ...

  9. java从request中获取GET和POST请求参数

    URL和参数列表 一 获取请求方式 request.getMethod(); get和post都可用, 二 获取请求类型 request.getContentType(); get和post都可用,示 ...

随机推荐

  1. MySQL用户管理及权限设置

    mysql 用户管理和权限设置 用户管理 mysql>use mysql; 查看 mysql> select host,user,password from user ; 创建 mysql ...

  2. 清除浮动最有效的css写法

    说起来呢,基本上只要你给容器div加了float的属性,就需要清除浮动来使页面显示正常,那么,到底有什么方法可以让浮动轻松清除呢? 可以用display:flex;替代,但是它对IE8,9支持不是很好 ...

  3. requests返回页面乱码

    req=requests.post(domain,params,json=None) req=req.content.decode()

  4. ionic3 动态设置tabs页面底部导航栏隐藏,并显示输入框添加评论

    1.先上原始效果图:                                        2.完成后效果                                2.实现思路: ion ...

  5. 浅谈Java/Android下的注解

    什么是注解 java.lang.annotation,接口 Annotation,在JDK5.0及以后版本引入. 注解是代码里的特殊标记,这些标记可以在编译.类加载.运行时被读取,并执行相应的处理.通 ...

  6. jeesite框架常用插件

    1.分页: <div class="pagination">${page }</div> 2.日历:onclick="WdatePicker({d ...

  7. javascript基础总结之实例(二)

    div的显示和隐藏 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://w ...

  8. J2EE学习篇之--JDBC详解

    今天我们来说一下关于JDBC的相关知识,关于JDBC我想大家都不陌生了,而且我记得早就开始使用它了,记得那是大二的时候做课程设计,但是那时候是为了完成任务,所以遇到问题就google,那时候也没有时间 ...

  9. ubuntu 下gcc的编译运行

    一些基本的操作 $gcc test.c //将test.c预处理.汇编.编译并链接形成可执行文件test $gcc test.c -o test //-o用来指定输出文件的文件名 $gcc -E te ...

  10. JavaScript 原生事件

    1.原生事件的绑定:https://www.cnblogs.com/shsxt/p/7903216.html a.DOM0级事件: 1. 行内事件 2. 元素.on事件名=函数 b.DOM2级事件:a ...