Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/jenkins/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在jira中集成RESTAPI以创建项目时出现问题_C#_Rest_Api_Jira_Project - Fatal编程技术网

C# 在jira中集成RESTAPI以创建项目时出现问题

C# 在jira中集成RESTAPI以创建项目时出现问题,c#,rest,api,jira,project,C#,Rest,Api,Jira,Project,我正在实现JIRA的RESTAPI,以使用C语言创建一个新项目。 我正在使用以下代码: NewProject objnewprj = new NewProject(); objnewprj.key = "key"; objnewprj.name = "Testing Project"; objnewprj.projectTypeKey = "business"; objnewprj.projectTemplateKey = "com.atlassian.jira-core-project-tem

我正在实现JIRA的RESTAPI,以使用C语言创建一个新项目。 我正在使用以下代码:

NewProject objnewprj = new NewProject();
objnewprj.key = "key";
objnewprj.name = "Testing Project";
objnewprj.projectTypeKey = "business";
objnewprj.projectTemplateKey = "com.atlassian.jira-core-project-templates:jira-core-project-management";
objnewprj.description = "Example Project description";
objnewprj.lead = "admin";
objnewprj.url = "http://abc.co.in/";
objnewprj.assigneeType = "UNASSIGNED";
objnewprj.avatarId = 10204;
objnewprj.issueSecurityScheme = 10000;
objnewprj.permissionScheme = 10100;
objnewprj.notificationScheme = 10100;
objnewprj.categoryId = "10000";
var projectitem = new JavaScriptSerializer().Serialize(objnewprj);
byte[] formbytes = System.Text.ASCIIEncoding.Default.GetBytes(projectitem.ToString());

var webrequest = (HttpWebRequest)WebRequest.Create("http://jirademoseasia.atlassian.net/rest/api/2/project");
webrequest.Method = "POST";        
webrequest.ContentType = "application/json";
webrequest.UserAgent = "xx";
try
{
    var webresponse = webrequest.GetResponse();
    System.IO.StreamReader reader = null;
    System.IO.Stream responseStream = webresponse.GetResponseStream();
    reader = new System.IO.StreamReader(responseStream);
     result = reader.ReadToEnd();
}
catch(Exception ex)
{
    return "error";
}
return result;                  
对于REST客户机来说,它工作得很好,但是在代码i中 我明白了

“远程服务器返回错误:(400)请求错误。”

有什么帮助吗?

上面写着:

状态400-如果请求无效且项目可能失败,则返回 不会被创建

我创建了一个POST请求,用于创建与您的主体相同的项目:

{"key":"key", 
 "name":"Testing Project",
 "projectTypeKey":"business",
 "projectTemplateKey":"com.atlassian.jira-core-project-templates:jira-core-project-management",
 "description":"Example Project description",
 "lead":"admin", 
 "url":"abc.co.in/", 
 "assigneeType":"UNASSIGNED", 
 "avatarId":10204, 
 "issueSecurityScheme":10000, 
 "permissionScheme":10100, 
 "notificationScheme":10100, 
 "categoryId":"10000" } 
它给了我有趣的结果:

  {
    "errorMessages": [],
    "errors": {
        "projectKey": "Project keys must start with an uppercase letter, followed by one or more uppercase alphanumeric characters.",
        "projectUrl": "The URL specified is not valid - it must start with http://"
    }
}
<>我也注意到你粘贴在你的评论中的JSON是错误的(有一个<代码>; >在URL PARAL表之后)。请查看服务器响应,以便找到有关项目创建问题的更详细信息。

服务器上显示:

状态400-如果请求无效且项目可能失败,则返回 不会被创建

我创建了一个POST请求,用于创建与您的主体相同的项目:

{"key":"key", 
 "name":"Testing Project",
 "projectTypeKey":"business",
 "projectTemplateKey":"com.atlassian.jira-core-project-templates:jira-core-project-management",
 "description":"Example Project description",
 "lead":"admin", 
 "url":"abc.co.in/", 
 "assigneeType":"UNASSIGNED", 
 "avatarId":10204, 
 "issueSecurityScheme":10000, 
 "permissionScheme":10100, 
 "notificationScheme":10100, 
 "categoryId":"10000" } 
它给了我有趣的结果:

  {
    "errorMessages": [],
    "errors": {
        "projectKey": "Project keys must start with an uppercase letter, followed by one or more uppercase alphanumeric characters.",
        "projectUrl": "The URL specified is not valid - it must start with http://"
    }
}

<>我也注意到你粘贴在你的评论中的JSON是错误的(有一个<代码>; >在URL PARAL表之后)。请查看服务器响应,以查找有关项目创建问题的更详细信息。

您可能需要验证请求才能创建项目。添加带有基本授权的标题“Authorization”。我也尝试过添加这段代码SetBasicAuthHeader(webrequest)singhharwinder@seasiainfotech.com", "Seasia@123"); 但是错误仍然是一样的。我不明白原因是什么????请建议我遗漏的其他内容。如果可能,请粘贴完整的http请求和/或请求的json序列化正文。httprequest与我在代码中提到的相同,其中一行代码为SetBasicAuthHeader(webrequest,“用户名”,“密码”),json序列化正文为:-{“键”:“键”,“名称”:“测试项目”、“projectTypeKey”:“业务”、“projectTemplateKey”:“com.atlassian.jira核心项目模板:jira核心项目管理”、“描述”:“示例项目描述”、“领导”:“管理”、“url”:“assigneeType”:“未分配”、“avatarId”:10204,“issueSecurityScheme”:10000,“permissionScheme”:10100,”notificationScheme“:10100,“categoryId”:“10000”}您可能需要对请求进行身份验证才能创建项目。添加具有基本授权的标题“Authorization”。我还通过添加此代码SetBasicAuthHeader(webrequest,”singhharwinder@seasiainfotech.com", "Seasia@123");但错误仍然是一样的。我不明白原因是什么???请建议我遗漏的其他内容。如果可能,请粘贴完整的http请求和/或请求的json序列化体。httprequest与我在代码中提到的相同,其中一行代码为SetBasicAuthHeader(webrequest,“username”,缩写为密码)和json序列化的正文是:-{“key”:“key”,“name”:“Testing Project”,“projectTypeKey”:“business”,“projectTemplateKey”:“com.atlassian.jira核心项目模板:jira核心项目管理”,“description”:“示例项目描述”,“lead”:“admin”,“url”:“assigneeType”:“UNASSIGNED”,“avatarId”:10204,”发布安全方案:10000,“许可方案”:10100,“通知方案”:10100,“类别ID”:“10000”}