无法在C#.net中使用OpenShift REST API

时间:2014-11-19 10:31:55

标签: api rest openshift consuming

我想知道如何将OpenShift Rest API用于基于C#.net的应用程序。我已通过网址了 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)Not Acceptable。"

请让我在哪里做错了。 提前致谢 乔蒂

1 个答案:

答案 0 :(得分:1)

您使用的是错误的HTTP标头。 ContentType用于POST / PUT操作,告诉服务器预期的内容。获取资源时,必须指定Accept标题。

request.Accept = "application/xml";