我正在尝试将xml文档发送到REST Web服务。使用像Poster这样的工具,调用工作正常(在“内容”的主体中使用xml),但在我的代码中,我得到错误503服务器不可用。
链接到海报:https://addons.mozilla.org/en-US/firefox/addon/poster/
我的代码如下(这是一个测试工具,所以没有错误处理等):
string s = "";
using (StreamReader sr = new StreamReader(@"c:\users\dev.admin\documents\visual studio 2010\Projects\WindowsFormsApplication2\WindowsFormsApplication2\XMLFile1.xml"))
{
s = sr.ReadToEnd();
}
string url = FULL_URL_WITH_PARAMETERS; // SAME URL AS USED IN POSTER
HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(url);
request.Method = "POST";
request.ContentType = "text/xml;charset=UTF-8";
string data = s;
Stream postStream = null;
using (StreamWriter requestStream = new StreamWriter(request.GetRequestStream()))
{
requestStream.Write(data);
}
HttpWebResponse pervasiveResponse = (HttpWebResponse)request.GetResponse();
StreamReader sr1 = new StreamReader(pervasiveResponse.GetResponseStream(), System.Text.Encoding.Default);
string backstr = sr1.ReadToEnd();
}
else
{
throw new ArgumentNullException();
}
答案 0 :(得分:0)
REST入门套件? WCF Web API(Glenn Block的项目,现在是他在4.5时间范围内的AppFabric的一部分?(虽然我相信会有一个独立的))?滚动你自己的关节?
无论如何,我认为使用二进制文件是正确的方法。出于这个原因,我会从this article开始。不是因为我尝试了代码并认为它是一篇很棒的文章,而仅仅是因为文章显示发送XML而我没有时间找到几个月前写的客户端。 ; - )
如果我可以挣脱足够长的时间来找到我的代码,我会发布一个样本。
哦,你应该看看的另一个工具是SoapUI。不,它不仅仅用于测试SOAP,因为它支持REST(和其他方法)以及SOAP。使用SoapUI的一个好处是能够将测试移到LoadUI并对服务进行压力测试。如果您只是在消费服务,当然可能没有最大的价值。