2015-12-08 41 views
0

我在从C#发布表单提交到KOBO服务器(https://kf.kobotoolbox.org)时遇到了一些麻烦。我得到的回应是'坏门户'。使用KOBO REST API提交表单提交

这里是我的代码:

var client = new RestClient("https://kc.kobotoolbox.org/api/v1/submissions"); 
    //var client = new RestClient("https://kc.kobotoolbox.org/api/v1/forms/{pk}/labels");  
    client.Authenticator = new HttpBasicAuthenticator("a_user", "alpha9876"); 
    //client.AddDefaultUrlSegment("pk", "31037"); 
    //client.AddDefaultUrlSegment("tags", "tag1, tag2"); 

    // client.AddDefaultUrlSegment("format", "xls"); 

    //client.AddDefaultUrlSegment("url", "https://kc.kobotoolbox.org/api/v1/projects/1"); 
    //client.AddDefaultUrlSegment("owner", "https://kc.kobotoolbox.org/api/v1/users/ona"); 
    //client.AddDefaultUrlSegment("name", "project 1"); 
    //client.AddDefaultUrlSegment("date_created", "2013-07-24T13:37:39Z"); 
    //client.AddDefaultUrlSegment("date_modified", "2013-07-24T13:37:39Z"); 
    var request = new RestRequest(Method.POST); 
    IRestResponse response = client.Execute(request); 
    request.AddHeader("header", "xml");      
    request.Resource = "C:\\Users\\Susan\\Desktop\\xmltest\\form_linkage_parentform.xml"; 

任何人都可以使用的示例代码段帮助什么使这个POST HTTP请求可能会像C#代码?基于此:https://kc.kobotoolbox.org/api/v1/

谢谢!

回答

0

我终于成功地做到使用CSV文件(https://kc.kobotoolbox.org/api/v1/forms)如下它:

var client = new RestClient("https://kc.kobotoolbox.org/api/v1/forms/{pk}/csv_import"); 
client.Authenticator = new HttpBasicAuthenticator("user_name", "password"); 
client.AddDefaultUrlSegment("pk", "31045"); 
string file_path = Server.MapPath("~/myform.csv"); 
var request = new RestRequest(Method.POST); 
request.AddFile("csv_file", file_path); 
IRestResponse response = client.Execute(request); 
+0

喜你能在这里分享您的CSV文件格式? – Tirth