客户端发现响应内容类型为“text/html; charset=utf-8”,但应为“text/xml”。

时间:2022-11-13 13:41:56
我采用web  Service方式进行开发,  
想对用户密码加密后经由service存到数据库中,  
采用的加密方法代码为:  
       //输入串加密  
       public  static  string  strSign(string  enterStr)  
       {  
               byte[]  bytes  =  Encoding.ASCII.GetBytes(enterStr);  
               //选择DSA签名方式(有RSA和DSA)  
               DSACryptoServiceProvider  dsac  =  new  DSACryptoServiceProvider();  
               //签名结果为signStr  
               byte[]  signStr  =  dsac.SignData(bytes);  
               //return  Encoding.UTF8.GetString(signStr);  
               return  Convert.ToBase64String(signStr);  
       }  
 
-------------------------------------------------  
加密后的串要填入soap  header中,  
然后调用web  service的方法login():  
                       WTWebService.AuthorityHeaer  header  =  new  WTWebService.AuthorityHeaer();  
                       header.userCount  =  userCount;  
                       header.userPwd  =  strSign(userPwd);  
                       WTWebService.WTWebService  wtWebAdmin  =  new  WTWebService.WTWebService();  
                       wtWebAdmin.AuthorityHeaerValue  =  header;  
 
                       WTWebService.RetData  retDataObject  =  wtWebAdmin.userLogin();  
 
---------------------------------------------------  
 
在调用userLogin()的方法时,捕获到异常:  
 
[System.InvalidOperationException]  =  {"客户端发现响应内容类型为“text/html;  charset=utf-8”,但应为“text/xml”。\r\n请求失败,错误信息为:\r\n--\r\n<html>\r\n        <head>\r\n                <title>编译错误</title>\r\n                <style>\r\n                  body  {font-family:\"Verdana\";font-weight:normal;font-size:  .7em;color:black;}  \r\n                  p  ...  
 
------------------------------------------------------  
 
我想请教高手们,对于  :  
----------------------------------------------------  
客户端发现响应内容类型为“text/html;  charset=utf-8”,但应为“text/xml”。  
---------------------------------------------------  
这个问题我觉得主要是编码的问题,请问各位高手,采用DSA签名加密后的数据,如何能从客户端传送到web service上?  
谢谢

4 个解决方案

#1


up

#2


任务管理器 —> 文件 —> 新建任务 —>
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_wp.exe

启动进程aspnet_wp.exe 即可

#3


还是没有解决方案呀

#4


IIS禁了对( .asmx)后缀的访问权限。

#1


up

#2


任务管理器 —> 文件 —> 新建任务 —>
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_wp.exe

启动进程aspnet_wp.exe 即可

#3


还是没有解决方案呀

#4


IIS禁了对( .asmx)后缀的访问权限。