Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/259.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用请求时表单值被截断。表单[0]_C#_Asp.net_Httprequest - Fatal编程技术网

C# 使用请求时表单值被截断。表单[0]

C# 使用请求时表单值被截断。表单[0],c#,asp.net,httprequest,C#,Asp.net,Httprequest,我在.NET web应用程序中有一个JSON RPC处理程序,并在其中发布了一个GWT表单,其中一个文本框具有以下值: 你如何定义你今天的压力水平(1=最小,10=最大) 当我将表单发布到服务器时,FireBug显示JSON字符串已被截断为: 最少,10=最多) 但是,当我在服务器的RPC处理程序中放置断点并查看HttpRequest.Form属性时,它仍然具有完整的字符串。然而,当我试图通过request.Form[0]访问名称-值对时,我得到了被截断的字符串,显然我的JSON编码器随后无法解

我在.NET web应用程序中有一个JSON RPC处理程序,并在其中发布了一个GWT表单,其中一个文本框具有以下值:

你如何定义你今天的压力水平(1=最小,10=最大)

当我将表单发布到服务器时,FireBug显示JSON字符串已被截断为:

最少,10=最多)

但是,当我在服务器的RPC处理程序中放置断点并查看HttpRequest.Form属性时,它仍然具有完整的字符串。然而,当我试图通过request.Form[0]访问名称-值对时,我得到了被截断的字符串,显然我的JSON编码器随后无法解码该字符串。你知道为什么吗? 编辑:以下是方法:

    public override string GetMethodName(HttpRequest request) {
        if (RpcUtils.IsGet(request)) {
            if (request.PathInfo.Length == 0) {
                return null;
            }
            string functionName = request.PathInfo.Substring(1);
            return functionName;
        } else if (RpcUtils.IsPost(request)) {
            if (request.PathInfo.Length > 0) {
                // Not really a proper JSON-RPC request, but handle it anyway
                string functionName = request.PathInfo.Substring(1);
                return functionName;
            } else {
                // Real JSON-RPC request
                var jsonRpc = (Dictionary<string, object>)this.Decode(request.Form[0]);
                string functionName = (string)jsonRpc["method"];
                return functionName;
            }
        } else {
            return null;
        }
    }
public重写字符串GetMethodName(HttpRequest请求){
if(RpcUtils.IsGet(请求)){
if(request.PathInfo.Length==0){
返回null;
}
字符串functionName=request.PathInfo.Substring(1);
返回函数名;
}else if(RpcUtils.IsPost(请求)){
如果(request.PathInfo.Length>0){
//这不是一个真正正确的JSON-RPC请求,但无论如何都要处理它
字符串functionName=request.PathInfo.Substring(1);
返回函数名;
}否则{
//真正的JSON-RPC请求
var jsonRpc=(Dictionary)this.Decode(request.Form[0]);
字符串functionName=(字符串)jsonRpc[“方法”];
返回函数名;
}
}否则{
返回null;
}
}
问题在于:


var jsonRpc=(Dictionary)this.Decode(request.Form[0])

你能把代码贴到这里吗?你知道失败的原因吗?