0
我打电话给我服务,你可以看到这样的:URI格式不WebClient的C#支持
public ReceptionView ReceptionViewByReceptionId(string receptionId)
{
ClientRequest.Headers["Content-type"] = "application/json";
ClientRequest.Encoding = System.Text.Encoding.UTF8;
string result = ClientRequest.DownloadString("http://localhost:1111" + " /ReceptionService.svc/ReceptionViewByReceptionId/" + receptionId);
var javascriptserializer = new JavaScriptSerializer();
return javascriptserializer.Deserialize<ReceptionView>(result);
}
但我DownloadString
得到这个错误:
{"URI formats are not supported."}
我的服务工程确定,当我打电话给我这样的浏览器服务:
http://localhost:1111/ReceptionService.svc/ReceptionViewByReceptionId/1
我得到预期的结果。但在我的应用程序中,我可以“T
我的服务接口
[WebGet(UriTemplate = "/ReceptionViewByReceptionId/{receptionId}", RequestFormat = WebMessageFormat.Json,
ResponseFormat = WebMessageFormat.Json)]
ReceptionView ReceptionViewByReceptionId(string receptionId);
作为一个说明我的函数之前的工作没有任何错误,但今天突然返回此错误。
使用像wireshark或fiddler这样的嗅探器来学习一些东西。在浏览器中使用嗅探器并连接到您的服务并查看消息的格式。它不仅仅是URL和字符串。还有其他标题信息必须包含在内。 – jdweng
@jdweng我在提琴手中追踪它,但服务网址从未调用过为什么? –
结果是200完成,因此连接成功完成。这可能是因为您的应用程序未完成安装了错误的Cookie而过期或运行。通常,当我调试这些问题时,我建议在更改代码以从IE浏览器中删除cookie之后,以前的不良结果不会导致混淆。 – jdweng