C#外部Web服务需要时间戳

时间:2016-12-15 23:53:36

标签: c# web-services timestamp soapui

非常感谢您的帮助。

我正在尝试使用C#自动化Web服务调用。我设法从SoapUI开始工作。服务调用需要使用有效的用户名/密码以及时间戳进行身份验证。但我不知道如何将此时间戳添加到C#服务调用。

网络服务的详情。

  1. 网址:https://prod.decisionpoint3.com/fleet/bsm/api/JobExecutionService?WSDL
  2. 授权基本
  3. 凭据。用户名:xxxx,密码:xxxx
  4. 在SoapUI中,在传出WS-Security配置下,使用上面的凭据添加用户名,然后添加时间戳,生存时间为60
  5. SoapUI的请求详情

    1. request - getJobExecutions,原始XML如下
    2. show image

      自动化我创建了一个C#控制台应用程序,添加了Web引用作为Veda。代码段如下

              string username="xxxx";
              string password="xxxx";
              Veda.JobExecutionServiceImplService service = new Veda.JobExecutionServiceImplService();
      
              System.Net.NetworkCredential credential=new NetworkCredential(username,password);
      
              service.Credentials=credential;
              service.Timeout = 1000;
      
              Veda.JobDefinitionKey jobDefinitionKey=new Veda.JobDefinitionKey();
              jobDefinitionKey.jobName="xxxx";
              jobDefinitionKey.serviceFQN="Enterprise/Consumer/Term/ConsumerTermBusinessService";
              jobDefinitionKey.templateName="ConsumerTermAUDataExtractCRM";
      
              Veda.executionDateTimeRange executionDateTimeRange = new Veda.executionDateTimeRange();
              executionDateTimeRange.startSpecified = false;
              executionDateTimeRange.endSpecified = false;
      
              Veda.JobExecution[] executions=service.getJobExecutions(jobDefinitionKey, executionDateTimeRange);
              foreach(var exe in executions)
              {
                  Console.WriteLine(exe.id);
              }
      

      由于缺少时间戳信息,我的代码引发了服务访问冲突异常。

      你非常感谢你指导方向的帮助。

0 个答案:

没有答案