苏飞论坛

标题: HttpHelper类Post数据到服务端问题 [打印本页]

作者: 透明的心0713    时间: 2021-11-11 09:05
标题: HttpHelper类Post数据到服务端问题
  private static string GetDateBySer(string strurl, Dictionary<string, object> param, bool needtoken = true)
        {
            string responseResult = "";
            try
            {
                if (param != null)
                {
                    strurl += "?" + BuildQuery(param, "utf8");
                }
                HttpHelper http = new HttpHelper();
                HttpItem item = new HttpItem()
                {
                    URL = sturl + strurl,//URL     必需项
                    Method = "POST",//URL     可选项 默认为Get
                    Encoding = System.Text.UTF8Encoding.UTF8,//编码格式(utf-8,gb2312,gbk)     可选项 默认类会自动识别
                    Timeout = 30000,//连接超时时间     可选项默认为100000
                    ReadWriteTimeout = 30000,//写入Post数据超时时间     可选项默认为30000
                    IsToLower = false,//得到的HTML代码是否转成小写     可选项默认转小写
                    Cookie = "",//字符串Cookie     可选项
                    UserAgent = "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:18.0) Gecko/20100101 Firefox/18.0",//用户的浏览器类型,版本,操作系统     可选项有默认值
                    Accept = "text/html, application/xhtml+xml, */*",//    可选项有默认值
                    ContentType = "application/json",//返回类型    可选项有默认值
                    Referer = "",//来源URL     可选项
                    Allowautoredirect = false,//是否根据301跳转     可选项
                    AutoRedirectCookie = false,//是否自动处理Cookie     可选项
                    Postdata = "",//Post数据     可选项GET时不需要写
                    ResultType = ResultType.String,//返回数据类型,是Byte还是String
                };
                if (needtoken)
                {
                    item.Header.Add("Authorization", "Bearer " + TokenKey);//设置请求头信息(Header)
                }
                HttpResult result = http.GetHtml(item);
                responseResult = result.Html;
            }
            catch (Exception ex)
            {
                WriteLog.CreateLog($"请求接口:{strurl}错误:" + ex);
            }
            return responseResult;
        }



参数param  包括 几个string类型的参数
还有个字段需要上传一个word文档的内容到数据库的blob字段 [文档几十K到几百K不等]
我这样写 提示url过长
服务端接口是我自己写的.net 的webapi
参数怎么接收?

求个解决方案


作者: 站长苏飞    时间: 2021-11-12 10:48
所有的参数都可以直接写到postdata里面不用写到URL里




欢迎光临 苏飞论坛 (http://www.sufeinet.com/) Powered by Discuz! X3.4