2

作为 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。

4

1 回答 1

0

您可以在 request.Method = "PUT" 中设置 put 并调用 URL 。试试看嘛 。PUT 与 POST 类似,但不是创建新条目,而是根据您作为 URL 的一部分发送的 Id 更新条目。该博客将帮助您编写代码:http: //vinothnat.blogspot.in/2007/09/httpwebrequest-using-put-method.html

于 2013-04-15T19:02:31.530 回答