2016-03-23 24 views
0

Bir Concur Sandbox'ı konfigüre ettim ve api ile oynadım. Kullanıcı API'sı .Net SDK tarafından desteklenmediğinden, aşağıdaki kodu yazdım.Concur V3 Api Kullanıcılar için çalışma yok

Sorun, masraflar için bu kodun çalışmasıdır (valida sonucu ile 200 değerini döndürür), ancak kullanıcı kodu 401 Yetkisiz olarak döndürülür. önceki kod çalışır gibi

using (var httpClient = new HttpClient()) 
    { 
    httpClient.DefaultRequestHeaders.Authorization = new System.Net.Http.Headers.AuthenticationHeaderValue("OAuth", oauthAccessToken); 
     httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/xml")); 

     var requestUri = "https://www.concursolutions.com/api/v3.0/expense/receiptimages"; 
     var respone = await httpClient.GetAsync(requestUri); 
     if (respone.IsSuccessStatusCode) 
     { 
     var result = respone.Content.ReadAsStringAsync(); 
     //throw new InvalidUriException(string.Format("Invalid uri: {0}", requestUri)); 
     } 
     } 

İdeal bu da çalışması gerekir

giderler, Kullanıcılar

using (var httpClient = new HttpClient()) 
      { 
       httpClient.DefaultRequestHeaders.Authorization = new System.Net.Http.Headers.AuthenticationHeaderValue("OAuth", oauthAccessToken); 
       httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/xml")); 

       var requestUri = "http://www.concursolutions.com/api/v3.0/common/users?user=user1%40company.net"; 
       var respone = await httpClient.GetAsync(requestUri); 
       if (!respone.IsSuccessStatusCode) 
       { 
        //throw new InvalidUriException(string.Format("Invalid uri: {0}", requestUri)); 
       } 
      } 
     } 

Ben bir izin sorunu var düşünmüştüm ama yeterince bu izni verilmesi önerilmektedir.

İşte

Summary

Application Configuration

cevap

0

Sayı Kullanıcı Api çağrı https olması gerekiyor yani İdaresi> Webservice uygulaması yapılandırmasıdır.