200分请问WebService问题

lhj0532 2006-03-14 04:29:09
问题:
用.Net HttpWebRequest的Post方式访问Java写的非标准WebService(http://192.168.168.202:9080/vlib/testpda.jsp显示出一个XML,给他发一个请求也应该返回该XML),结果返回的信息是空。是不是由于非标准XML,使.Net不能正确得到返回信息?另外,HttpWebRequest会自动发送请求到9080端口吧?
还有一个疑问:.Net的WebService在局域网内部为什么不能用Post的方式访问?是不是由于权限原因?

以下是问题的部分代码:

string url = "http://192.168.168.202:9080/vlib/testpda.jsp";
HttpWebRequest httpRequest = (HttpWebRequest)HttpWebRequest.Create(url);
httpRequest.Method = "POST";
httpRequest.ContentType = "application/x-www-form-urlencoded";
string sendString = "<?xml version='1.0' encoding='utf-8'?>";
sendString = sendString + "<PMSDATA>";
sendString = sendString + "<TAPECODE>" + txtTapeCode.Text;
sendString = sendString + "</TAPECODE></PMSDATA>";

byte[] sendBytes = Encoding.UTF8.GetBytes(sendString);
httpRequest.ContentLength = sendBytes.Length;
Stream writer = httpRequest.GetRequestStream();
writer.Write(sendBytes,0,sendBytes.Length);
writer.Close();

HttpWebResponse httpResponse = (HttpWebResponse)httpRequest.GetResponse();
Stream reader = httpResponse.GetResponseStream();

问题解决在给100分,谢谢!!!

...全文
168 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
lhj0532 2006-03-15
  • 打赏
  • 举报
回复
同志们再看看??!!!
lhj0532 2006-03-14
  • 打赏
  • 举报
回复
谢谢几位!!!
我又试着用Socket去访问HTTP,多种方法看看哪个能用,多一种解决方案,多条路。
还有一个疑问:.Net的WebService在局域网内部PDA(.Net Compact Framework)为什么不能用Post的方式访问?是不是由于权限原因?怎么设置???
mmqingfeng 2006-03-14
  • 打赏
  • 举报
回复
看代码似乎没什么问题啊,
我也顺便问一下
<?xml version='1.0' encoding='utf-8'?>后面需不需要加换行符?
lidong6 2006-03-14
  • 打赏
  • 举报
回复
HttpWebRequest不管是哪个端口,他只按你给的URL来访问.

如果GET可以而POST不可以,可能是在WEB服务器上加了限制.

你也可以试试下面的代码
private string geturl(string url,string postdata)
{
WebClient myWebClient = new WebClient();
myWebClient.Headers.Add("Content-Type","application/x-www-form-urlencoded");
byte[] byteArray = Encoding.Default.GetBytes(postdata);
byte[] responseArray;
responseArray = myWebClient.UploadData(url,"Post",byteArray);
string r=Encoding.Default.GetString(responseArray);
return r;
}

调用方法geturl("http://www.xxx.com/a.jsp","TAPECODE=asdadfadf")
孟子E章 2006-03-14
  • 打赏
  • 举报
回复
如果在浏览器地址里输入
http://192.168.168.202:9080/vlib/testpda.jsp
可以返回xml
你可以试试get 方法,而不是post先

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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