zoukankan      html  css  js  c++  java
  • Sample-Code:Translator

      <h2>My Spanish Translator</h2>
           <p>
                Enter your text in English:&nbsp; </p>
           <p>
               <asp:TextBox ID="TextBox1" runat="server"  
                 Width="198px"></asp:TextBox>
           </p>
         <p>
               <asp:Button ID="Button1" runat="server" onclick="Button1_Click" 
                    Text="Translate" />
           </p>
           <p>
                Here is your translation:</p>
          <p>
               <asp:Literal ID="lbl1" runat="server"></asp:Literal>
          </p>

    button code:

     string clientID = "<Your ClientID>";
                string clientSecret = "<Your Client Secret>";
    
                String strTranslatorAccessURI = "https://datamarket.accesscontrol.windows.net/v2/OAuth2-13";
                String strRequestDetails = string.Format("grant_type=client_credentials&client_id={0}&client_secret={1}&scope=http://api.microsofttranslator.com", HttpUtility.UrlEncode(clientID), HttpUtility.UrlEncode(clientSecret));
    
                System.Net.WebRequest webRequest = System.Net.WebRequest.Create(strTranslatorAccessURI);
                webRequest.ContentType = "application/x-www-form-urlencoded";
                webRequest.Method = "POST";
    
                byte[] bytes = System.Text.Encoding.ASCII.GetBytes(strRequestDetails);
                webRequest.ContentLength = bytes.Length;
                using (System.IO.Stream outputStream = webRequest.GetRequestStream())
                {
                    outputStream.Write(bytes, 0, bytes.Length);
                }
                System.Net.WebResponse webResponse = webRequest.GetResponse();
    
                System.Runtime.Serialization.Json.DataContractJsonSerializer serializer = new System.Runtime.Serialization.Json.DataContractJsonSerializer(typeof(AdmAccessToken));
                //Get deserialized object from JSON stream 
                AdmAccessToken token = (AdmAccessToken)serializer.ReadObject(webResponse.GetResponseStream());
    
                string headerValue = "Bearer " + token.access_token;
    
                string txtToTranslate = TextBox1.Text;
                string uri = "http://api.microsofttranslator.com/v2/Http.svc/Translate?text=" + System.Web.HttpUtility.UrlEncode(txtToTranslate) + "&from=en&to=es";
                System.Net.WebRequest translationWebRequest = System.Net.WebRequest.Create(uri);
                translationWebRequest.Headers.Add("Authorization", headerValue);
                System.Net.WebResponse response = null;
                response = translationWebRequest.GetResponse();
                System.IO.Stream stream = response.GetResponseStream();
                System.Text.Encoding encode = System.Text.Encoding.GetEncoding("utf-8");
                System.IO.StreamReader translatedStream = new System.IO.StreamReader(stream, encode);
                System.Xml.XmlDocument xTranslation = new System.Xml.XmlDocument();
                xTranslation.LoadXml(translatedStream.ReadToEnd());
                lbl1.Text = "Your Translation is: " + xTranslation.InnerText;

    AdmAccessToken Class:

      public class AdmAccessToken
           {
        
               public string access_token { get; set; }
     
              public string token_type { get; set; }
        
               public string expires_in { get; set; }
         
                public string scope { get; set; }
          }

    Resource from: http://blogs.msdn.com/b/translation/p/gettingstarted1.aspx

  • 相关阅读:
    $Django 中间件 csrf
    $Django cookies与session--解决无连接无状态问题, session配置
    $Django Form组件
    $Django Paginator分页器 批量创建数据
    $Djangon admin界面 添加表 增删查改
    $Django ajax简介 ajax简单数据交互,上传文件(form-data格式数据),Json数据格式交互
    $Django 多对多-自定义第三张表 基于双下划线的跨表查询(补充)
    $Django 客户端->wsgi->中间组件->urls->views(model,template) 总结+补充(事物,choices,inclusion_tag)!
    $Django 聚合函数、分组查询、F,Q查询、orm字段以及参数
    经典的C++库【转帖】
  • 原文地址:https://www.cnblogs.com/akingyao/p/3835608.html
Copyright © 2011-2022 走看看