作为 ASP.NET 的新手以及无状态带来的乐趣,我一直在花费大量时间来思考这些概念。话说回来....
我正在处理使用 restful web 服务来更改/查看数据的第三方 API。首先,我发现了如何在 asp.net 中调用 Web 服务,然后通过查看 API 文档,我看到要获取数据,您可以这样做:
所以我写了以下内容来查看空间的特征(他们数据库中的对象):
request = WebRequest.Create(ReqURL + query) as HttpWebRequest;
if (DidAuthenticate(query))
{
try
{
//It will 404 if that space does not contain any custom attributes
using (response = request.GetResponse() as HttpWebResponse)
{
//Get the steam of the XML
StreamReader reader = new StreamReader(response.GetResponseStream());
//Put the XML in a document
XmlDocument doc = new XmlDocument();
doc.Load(reader);
//Grab all the space nodes
XmlNodeList featuresList = doc.GetElementsByTagName("r25:feature");
if (featuresList.Count > 0)
{
//Get all the info from the child nodes of the space node
foreach (XmlNode node in featuresList)
{
XmlNodeList childInfo = node.ChildNodes;
//The order never changes..i.e. the first index is always the id, 2nd is name, 3rd is quantity
Feature aFeature = new Feature(childInfo[ID].InnerText,
childInfo[NAME].InnerText, Int16.Parse(childInfo[QUANTITY].InnerText));
//Return all of the features
features.Add(aFeature);
}
}
}
}
catch (WebException)
{
throw new WebException();
}
效果很好,我现在拥有了我需要的所有信息。现在,我正在尝试学习如何通过他们的网络服务发回信息以更改信息,这就是我苦苦挣扎的地方。我已经看到他们使用“PUT”来执行此操作,因此我尝试在 asp.net 中查找使用 http put 的教程,但由于我对该主题的无知或不完全理解,我没有找到我真正需要的内容结果。
以下是 API 文档关于操作信息的说明:
那么有人可以提供一个快速的代码示例/伪代码来展示我如何使用这个网络服务吗?GET 很好,但我不知道从哪里开始 PUT。