0

我想知道如何在基于 C#.net 的应用程序中使用 OpenShift Rest API。我已经浏览了 URL https://access.redhat.com/documentation/en-US/OpenShift_Online/2.0/pdf/REST_API_Guide/OpenShift_Online-2.0-REST_API_Guide-en-US.pdf,在这个例子中提到了 Ruby、Python和 cRUL。但没有提到.Net。所以我创建了使用这个 api 的示例应用程序。下面是代码 -

string URL = "https://openshift.redhat.com/broker/rest/api";
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(URL);
request.Method = "GET";
request.ContentType = "application/xml;";
 try
        {
            WebResponse webResponse = request.GetResponse();
            Stream webStream = webResponse.GetResponseStream();
            StreamReader responseReader = new StreamReader(webStream);
            string response = responseReader.ReadToEnd();
            Console.Out.WriteLine(response);
            responseReader.Close();
        }
        catch (Exception e)
        {
            Console.Out.WriteLine("-----------------");
            Console.Out.WriteLine(e.Message);
        }

在执行上述代码时,我收到以下错误 - “远程服务器返回错误:(406)不可接受。”

请让我在哪里做错了。在此先感谢乔蒂

4

1 回答 1

1

您使用了错误的 HTTP 标头。ContentType用于 POST/PUT 操作以告诉服务器期望什么。当您获取资源时,您必须指定一个Accept标头。

request.Accept = "application/xml";
于 2014-11-19T10:53:48.757 回答