C# WebService本地调试正常,放到IIS服务器上就传空值回来!
问题描述:
Web服务是引用RestSharp访问的客户数据,代码如下:
[WebMethod]
public string Get_DateCode(string Query_snNo)
{
try
{
var client = new RestClient("http://***********");
//client.Timeout = -1;
var request = new RestRequest(Method.POST);
request.Timeout = 10000;
request.AddHeader("X-HW-ID", "***************");
request.AddHeader("X-HW-APPKEY", "*************");
request.AddHeader("Content-Type", "application/json");
request.AddParameter("application/json", "******", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
return response.StatusCode + response.Content; //返回的结果
}
catch (Exception ex)
{
return ex.ToString();
}
}
在本机调试传回的信息是
<?xml version="1.0" encoding="ISO-8859-1"?>
<string xmlns="http://tempuri.org/">{OK"msg":"SUCCESS"</string>
在IIS上发布后是可以正常运行的,但是传回的是
<?xml version="1.0" encoding="ISO-8859-1"?>
<string xmlns="http://tempuri.org/">0</string>
第一次用RestSharp,求大佬给看下哪里有问题
答
用fiddler抓包看看,你的请求发哪里了,参数全不全,返回的原始soap报文是什么
答
IIS的web.config配置信息跟你本地的一样吗?IIS是你本地的吗?
如果不是本地IIS,那么在本地IIS将建个网站指向你的项目,附加到w3wp进程调试看下