c# - Soap 响应被截断(SoapUi 返回正确响应)
问题描述
实际上,我得到了截断的肥皂响应。SoapUI 返回未截断的响应,因此我认为问题出在我检索响应的方式上。
这就是我得到回应的方式。
请求的类型为 HttpWebRequest
...
using (WebResponse Serviceres = request.GetResponse())
{
using (StreamReader rd = new StreamReader(Serviceres.GetResponseStream()))
{
string ServiceResult = rd.ReadToEnd();
...
...
...
}
}
...
“ServiceResult”中的字符串最终被截断。也许 StreamReader 是问题所在?
解决方案
最后我找到了这个原因。
我必须定义一个编码并将其传递给 StreamReader 构造函数
Encoding enc = Encoding.GetEncoding("utf-8");
...
using (WebResponse Serviceres = request.GetResponse())
{
using (StreamReader rd = new StreamReader(Serviceres.GetResponseStream(), enc))
{
string ServiceResult = rd.ReadToEnd();
...
...
...
}
}
...
之后,我得到了完整的回复。
推荐阅读
- sql - 从四个表中的任何一个中选择数据
- php - 默认 null 和 ?type 上的 PHP 冗余类型提示
- c++ - QT ReplaceChild 方法
- actions-on-google - Dialogflow - 响应 Actions on Google 事件
- reactjs - React JS - 如何在对话框的 PaperProps 中添加样式(material-ui)
- c# - TcpListener 没有从 SmtpClient 接收到数据
- ionic3 - 在 Ionic 3 中使用 HttpClient 下载文件
- c - 如何通过C编程实时获取本地监听端口?
- google-sheets - 如何创建一个运行总计公式,当新行添加到我的电子表格时自动扩展
- azure - 是否可以在 Azure 仪表板中嵌入 PowerBi 报告