使用Rest API创建顶点时出现500错误

时间:2016-01-05 07:36:31

标签: rest orientdb

我正在编写一个SSIS脚本组件,用于使用RestAPI将数据导入orientdb,但我收到错误500.请我被困在这里。是否有人可以帮助我。我使用的是2.1.7社区版。 到目前为止,这是我的代码。

    Uri address = new Uri("http://localhost:2480//command/SQ-DB/sql/");
    HttpWebRequest request = WebRequest.Create(address) as HttpWebRequest;
    request.Method = "POST";
    request.Accept = "application/json; charset=UTF-8";
    request.ContentType = "application/json";
    string username = "root";
    string password = "***";
    String encoded = System.Convert.ToBase64String(System.Text.Encoding.GetEncoding("ISO-8859-1").GetBytes(username + ":" + password));
    request.Headers.Add("Authorization", "Basic " + encoded);
    StringBuilder data = new StringBuilder();
   // string link = "{\"statements\" : [ {\"statement\" : \"CREATE ( company: Accounts { Name:" + Row.companyname + "} ) RETURN company\"} ]}";
    string link= "CREATE VERTEX Contacts CONTENT { 'name' : "+ Row.fullname+", 'Email' : "+ Row.emailaddress1+", 'Phone' : "+ Row.telephone1 + ", 'ContactId' : "+ Row.contactid+", 'City' : "+Row.address1city+"}" ;
    data.Append(HttpUtility.UrlEncode(link));
    // Create a byte array of the data we want to send
    byte[] byteData = UTF8Encoding.UTF8.GetBytes(data.ToString());
    // Set the content length in the request headers
    request.ContentLength = byteData.Length;
    request.Headers.Add("Accept-Encoding", "gzip,deflate");
    using (Stream postStream = request.GetRequestStream())
    {
        postStream.Write(byteData, 0, byteData.Length);
    }
    // Get response
    using (HttpWebResponse response = request.GetResponse() as HttpWebResponse)
    {
        // Get the response stream
        StreamReader reader = new StreamReader(response.GetResponseStream());
        // Console application output
        Console.WriteLine(reader.ReadToEnd());
    }

如果有人能指出这个问题,那将是一个很大的帮助。谢谢

0 个答案:

没有答案