public static string GetAccesToken() { AdmAuthentication admAuth; if (string.IsNullOrEmpty(_SubscriptionKey)) { // Get Client Id and Client Secret from https://datamarket.azure.com/developer/applications/ // Refer obtaining AccessToken (http://msdn.microsoft.com/en-us/library/hh454950.aspx) if (string.IsNullOrEmpty(_ClientSecret) || string.IsNullOrEmpty(_ClientID)) { throw new ArgumentException( "Client ID and Client Secret are required. Please obtain your credentials from https://datamarket.azure.com/developer/applications/ and update in Settings."); } admAuth = new DatamarketAdmAuthentication(_ClientID, _ClientSecret); } else { // Get Subscription keys from https://portal.azure.com/ => All resources => (Your Cognitive Services account) => Resource Management => Keys // Refer obtaining AccessToken (http://docs.microsofttranslator.com/oauth-token.html) admAuth = new AzureAdmAuthentication(_SubscriptionKey); } try { AdmAccessToken admToken = admAuth.GetAccessToken(); return(admToken.access_token); } catch (WebException e) { // Obtain detailed error information string strResponse = string.Empty; using (HttpWebResponse response = (HttpWebResponse)e.Response) { if (response != null) { using (Stream responseStream = response.GetResponseStream()) { using (StreamReader sr = new StreamReader(responseStream, System.Text.Encoding.ASCII)) { strResponse = sr.ReadToEnd(); } } } } throw new Exception(string.Format("Http status code={0}, error message={1}", e.Status, strResponse), e); } catch (Exception ex) { throw ex; } }
public static string GetAccesToken() { // Get Client Id and Client Secret from https://datamarket.azure.com/developer/applications/ // Refer obtaining AccessToken (http://msdn.microsoft.com/en-us/library/hh454950.aspx) if (string.IsNullOrEmpty(_ClientSecret) || string.IsNullOrEmpty(_ClientID)) { throw new ArgumentException( "Client ID and Client Secret are required. Please obtain your credentials from https://datamarket.azure.com/developer/applications/ and update in Settings."); } AdmAuthentication admAuth = new AdmAuthentication(_ClientID, _ClientSecret); try { AdmAccessToken admToken = admAuth.GetAccessToken(); return(admToken.access_token); } catch (WebException e) { // Obtain detailed error information string strResponse = string.Empty; using (HttpWebResponse response = (HttpWebResponse)e.Response) { if (response != null) { using (Stream responseStream = response.GetResponseStream()) { using (StreamReader sr = new StreamReader(responseStream, System.Text.Encoding.ASCII)) { strResponse = sr.ReadToEnd(); } } } } throw new Exception(string.Format("Http status code={0}, error message={1}", e.Status, strResponse), e); } catch (Exception ex) { throw ex; } }
private AdmAccessToken HttpPost(string datamarketAccessUri, string requestDetails) { WebRequest webRequest = WebRequest.Create(datamarketAccessUri); webRequest.ContentType = "application/x-www-form-urlencoded"; webRequest.Method = "POST"; byte[] bytes = Encoding.ASCII.GetBytes(requestDetails); webRequest.ContentLength = bytes.Length; using (Stream outputStream = webRequest.GetRequestStream()) { outputStream.Write(bytes, 0, bytes.Length); } using (WebResponse webResponse = webRequest.GetResponse()) { DataContractJsonSerializer serializer = new DataContractJsonSerializer(typeof(AdmAccessToken)); // Get deserialized object from JSON stream AdmAccessToken token = (AdmAccessToken)serializer.ReadObject(webResponse.GetResponseStream()); return(token); } }
private AdmAccessToken HttpPost(string AzureAccessUri, string subscriptionKey) { var webRequest = HttpWebRequest.Create(AzureAccessUri); webRequest.ContentType = "application/json"; ((HttpWebRequest)webRequest).Accept = "application/jwt"; webRequest.Headers.Set("Ocp-Apim-Subscription-Key", subscriptionKey); webRequest.Method = "POST"; webRequest.ContentLength = 0; using (var stream = webRequest.GetRequestStream()) { stream.Write(new byte[0], 0, 0); } using (WebResponse webResponse = webRequest.GetResponse()) { var tokenString = new StreamReader(webResponse.GetResponseStream()).ReadToEnd(); AdmAccessToken token = new AdmAccessToken(); token.access_token = tokenString; return(token); } }