net 调用接口,发现对方可以获取我方的请求,但是数据为空。求指教

zhongwei127day 2016-06-01 04:51:42
下面是我调用接口的代码
参数:1.PostUrl : http://www.xxxxxx.gov.cn:81/RejectTaskPlanService.do?method=receiveTaskPlanFile
2.Parameters: 以XML格式推送的报文
public static string RwsPost(string PostUrl, string Parameters)
{
string content = string.Empty;
try
{
//转换为字节数组
byte[] bytesRequestData = Encoding.UTF8.GetBytes(Parameters);
//path不是登录界面,是登录界面向服务器提交数据的界面
HttpWebRequest myReq = (HttpWebRequest)HttpWebRequest.Create(PostUrl);
myReq.Method = "post";
myReq.ContentType = "application/x-www-form-urlencoded";
//填充POST数据
myReq.ContentLength = bytesRequestData.Length;
Stream requestStream = myReq.GetRequestStream();
requestStream.Write(bytesRequestData, 0, bytesRequestData.Length);
requestStream.Close();
//发送POST数据请求服务器
HttpWebResponse HttpWResp = (HttpWebResponse)myReq.GetResponse();
//获取服务器返回信息
//StreamReader sr = new StreamReader(HttpWResp.GetResponseStream(),System.Text.Encoding.UTF8);
//content = sr.ReadToEnd();
Stream myStream = HttpWResp.GetResponseStream();
StreamReader reader = new StreamReader(myStream, Encoding.UTF8);
content = reader.ReadToEnd();
reader.Close();
HttpWResp.Close();
}
catch (Exception ex)
{
content = ex.ToString();
}
return content;
}

为什么对方可以获取我的请求,但获取的数据为空。
...全文
443 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
正怒月神 版主 2016-06-03
  • 打赏
  • 举报
回复
你自己调用的自己的接口,数据返回如何?
小程序员 2016-06-03
  • 打赏
  • 举报
回复
打开浏览器,把接口地址输入进去,看看能不能拿得到值,拿不到的话找服务端改程序去,那的到的话你整理下你的httphelper类,从返回数据第一步开始一步步调试,看看最初的时候有没有值,没有的话你的研究下httphelper
Hertz_liu 2016-06-03
  • 打赏
  • 举报
回复

试试把myReq.ContentType = "application/x-www-form-urlencoded"换成myReq.ContentType = "application/json;charset=UTF-8";
  • 打赏
  • 举报
回复
如果你跟“对方”合作,必须能深入一步能跟对方沟通一点更为本质的技术。不然就很被动。
  • 打赏
  • 举报
回复
引用 楼主 zhongwei127day 的回复:
为什么对方可以获取我的请求,但获取的数据为空。
凡是出错的服务程序,都可以如此说法,都是被访问到了,但是无法处理你提交的数据。 所以“对方”其实是嘲笑你,而你还当真了。
  • 打赏
  • 举报
回复
引用 5 楼 shoppo0505 的回复:
[quote=引用 4 楼 sp1234 的回复:] [quote=引用 1 楼 shoppo0505 的回复:] 你直接在这个webservice介面输入你的变量,看看返回什么数据
webservice?[/quote] PostUrl 不就是一个webservice页​​面么?[/quote] 怎么看出来的?难道说 webserver 的路径都有 ?method=receiveTaskPlanFile 这类后缀?还是说凡是要求以 xml 格式提交参数的都是webserver,什么别的理由? 这是普通的服务,但是不一定能“输入你的变量看看返回什么数据”。别的编程平台即使是提供与 asp.net 兼容的 webserver 通常也不能像强大的 asp.net 那样提供一个“页面输入变量”的测试功能页面的。
  • 打赏
  • 举报
回复
自己先用浏览器调试一下,看参数传递和返回的结果集,然后再看你的接口是否返回了结果或者哪里报错了。
shoppo0505 2016-06-01
  • 打赏
  • 举报
回复
引用 4 楼 sp1234 的回复:
[quote=引用 1 楼 shoppo0505 的回复:] 你直接在这个webservice介面输入你的变量,看看返回什么数据
webservice?[/quote] PostUrl 不就是一个webservice页​​面么?
  • 打赏
  • 举报
回复
引用 1 楼 shoppo0505 的回复:
你直接在这个webservice介面输入你的变量,看看返回什么数据
webservice?
  • 打赏
  • 举报
回复
贴出对方的文档、说明、范例来。我感觉你跟对方,都是稀里糊涂地在“碰”程序,而不是在设计程序。
  • 打赏
  • 举报
回复
你确定你是想使用 application/x-www-form-urlencoded 协议吗?
shoppo0505 2016-06-01
  • 打赏
  • 举报
回复
你直接在这个webservice介面输入你的变量,看看返回什么数据

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧