这种POST请求如何在C#中处理,谢谢

tony123710 2004-06-28 03:32:10
<form name=form1 action="http://..../my.asp" method="post">
<input type=submit value="Search">
<input name=keyword value ="date=2001">
</form>
通过类似这样asp的post,可以得到想要的结果
但是在C#中用webClient或者webRequest实现的时候,比如用以下代码
string uriString = "http://.../my.asp";
WebClient myWebClient = new WebClient();
NameValueCollection myNameValueCollection = new NameValueCollection();
myNameValueCollection.Add("keyword","date=2001");
byte[] responseArray = myWebClient.UploadValues(uriString,"POST",myNameValueCollection);
strHTML = Encoding.Default.GetString(responseArray);

结果会出现查询为空的情况,是不是keyword后面的带=的字符串没有作为值传入啊
有人碰到这类情况吗,望帮忙,谢谢
...全文
674 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
tony123710 2004-06-28
  • 打赏
  • 举报
回复
自己又试了一下,现在看来,好像不是传值的问题了
在form中action如果是action="http://..../my.asp?flag=2"
则在html中没有问题,可以正确提交
而在C#中使用上面的WebClient就没有办法正确提交
为什么呢
tony123710 2004-06-28
  • 打赏
  • 举报
回复
上面的应该是
myNameValueCollection[0] "date=2001"
我改了一下字段名
tony123710 2004-06-28
  • 打赏
  • 举报
回复
断点显示
myNameValueCollection[0] "申请日=2001"
没有问题啊
我觉得是值的处理上出现问题了
谢谢楼上的回复
还请大家多发表一下高见,不慎感激
gabriel1 2004-06-28
  • 打赏
  • 举报
回复
byte[] responseArray = myWebClient.UploadValues 设在这里。
监视一下myNameValueCollection的属性和状态。
tony123710 2004-06-28
  • 打赏
  • 举报
回复
急,up
tony123710 2004-06-28
  • 打赏
  • 举报
回复
断点应该设在哪里啊,监视哪个变量的值呢?
gabriel1 2004-06-28
  • 打赏
  • 举报
回复
应该是值没有写进去。
你断点跟踪一下看看

110,571

社区成员

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

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

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