簡體   English   中英

登錄jira soap api

[英]Login to jira soap api

我嘗試在c#上使用jira soap api:

  1. 在VS2010中創建新項目
  2. 添加Web服務引用(JiraTest): http://jira.atlassian.com/rpc/soap/jirasoapservice-v2?wsdl ://jira.atlassian.com/rpc/soap/jirasoapservice-v2?wsdl
  3. 寫下一個代碼:

     static void Main(string[] args) { var jiraLogin = "soaptester"; var jiraPassword = "soaptester"; var jiraClient = new JiraTest.JiraSoapServiceClient(); var projects = jiraClient.getProjects(); } 

但是這段代碼會讓我感到遺憾,我還沒有認識到這一點。 我嘗試查找login方法,但它有下一個簽名:

public void login();

哪里沒有登錄名和密碼參數。 當我使用這個登錄方法代碼拋出exeption時,登錄名或密碼無效。 我不知道我必須在哪里設置我的憑據。

如何在調用所需方法之前使用jira soap api登錄?

補充:請參閱https://developer.atlassian.com/display/JIRADEV/Creating+a+JIRA+SOAP+Client

我遇到了同樣的問題並找到了答案。 您需要將其添加為Web引用。 它將引入參數,但是當它們出現在WSDL中時,登錄(字符串用戶名,字符串密碼)變為登錄(字符串in0,字符串in1),但至少它是可用的。

所以步驟:

  • 右鍵單擊Project並單擊“添加服務引用...”(就像之前一樣)
  • 單擊對話框左下角的“高級...”
  • 單擊對話框左下角的“添加Web引用...”
  • 在Url Box中輸入WSDL Url,例如“https://jira.atlassian.com/rpc/soap/jirasoapservice-v2?WSDL”
  • 單擊綠色箭頭
  • 在Web引用名稱中為您的引用命名:框
  • 點擊“添加參考”

你可以試試這個

    JiraSoapServiceService jiraSoapService = new JiraSoapServiceService();

    public string Login(string user, string pwd)
    {
        string result = string.Empty;

        result = jiraSoapService.login(user, pwd);

        return result;

    }


    public void Logout(string token)
    {
        jiraSoapService.logout(token);
    }

我發現自己處於相同的情況,但由於我需要控制綁定配置(sendTimeout,maxReceivedMessageSize等),因此無法使用“Web服務服務”解決方案。

您可以通過svcutil.exe手動生成JIRA WCF代理來解決此問題。 例如:

 1. Run svcutil.exe http://myhostname/rpc/soap/jirasoapservice-v2?wsdl /n:*,mynamespace
 2. Copy output source file to your project
 3. Copy configuration (output.config) to your app.config.

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM