ContentType的问题,高分请教

zhaoweiwei 2005-04-19 06:26:14
今天遇到一个比较郁闷的问题
public static string PostModel(string strUrl)
{
Encoding encode = System.Text.Encoding.Default;
byte[] arrB = encode.GetBytes(strUrl);
string strBaseUrl= Config.Instance.Url;
HttpWebRequest myReq = (HttpWebRequest)WebRequest.Create(strBaseUrl);
myReq.Method = "POST" ;
myReq.ContentType = "application/x-www-form-urlencoded";
myReq.ContentLength = arrB.Length;
Stream outStream = myReq.GetRequestStream();
outStream.Write(arrB,0,arrB.Length);
outStream.Close();
WebResponse myResp = null;
myResp = myReq.GetResponse();
Stream ReceiveStream = myResp.GetResponseStream();
StreamReader readStream = new StreamReader( ReceiveStream, encode );
Char[] read = new Char[256];
int count = readStream.Read( read, 0, 256 );
string str = null;
while (count > 0)
{
str += new String(read, 0, count);
count = readStream.Read(read, 0, 256);
}
readStream.Close();
myResp.Close();
return str;

}
请求的服务端是。net环境,当我这个请求的是那种xml格式的时候,直接就是报500错误,
就是说strUrl=<webmethod id="service_order_to_cp"><cpcode value="11111"/><userid value="133××××××"/><encryptflag value="N"/><serviceid value="YYQK1"/><ispack value="N"/><sub_type value="PER_HIT"/><orderdate value="2004-03-20 15:29:30"/></webmethod>
的时候,但是当我把myReq.ContentType = "text/html"的时候他是可以的,返回是正常的,于是我感觉是ContentType 和post的数据不配套的问题,但是当我请求一个jsp写的服务的时候他是可以的,访问aspx页面的时候,连page_load都进入不了。这个就有点不明白了。请教高手指教。
...全文
152 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
曲滨_銘龘鶽 2005-04-19
  • 打赏
  • 举报
回复
到!都让你说了
速马 2005-04-19
  • 打赏
  • 举报
回复
ASP.NET默认认为提交的含有<>等字符的值可能是不安全的,所以会直接返回500错误不予处理
设置ValidateRequest为false即可
速马 2005-04-19
  • 打赏
  • 举报
回复
.aspx:
<%@ Page ValidateRequest="false"...
zqning 2005-04-19
  • 打赏
  • 举报
回复
post是由其他方发送的,而且不能更改,我想请教的问题就是服务端iis中的设置或者machine.config有啥设置。因为请求所有的aspx都是这样的问题,而不是说你改变客户端的编码,我想问的就是服务端的问题。请高手指教呀。
速马 2005-04-19
  • 打赏
  • 举报
回复
try:
byte[] arrB = encode.GetBytes(HttpUtility.UrlEncode(strUrl));

110,476

社区成员

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

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

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