zoukankan      html  css  js  c++  java
  • Flex乱码问题,后台C#

    1.前端采用Flex做的表现,后端采用C#开发,之间用Ajax+Json方式进行数据交互。

    2.在Chrome上显示没问题,在QQ浏览器上显示就是乱码。

    3.通过百度大概了解到是字符集不匹配,网上很多解决方法都是说在Flex代码中增加:System.useCodePage=true,经过各种测试,发现无用。

    System.useCodePage=true

    4.又有人指出在包含Flex运行的主页面上html头部增加utf8字符集,经过测试,发现还是无用。

            

    <meta http-equiv="Content-Type" content="text/html"; charset="uft-8">

    5.后来找到一篇文章说在Flex界面中所有的控件指定字体 ,如:宋体。经过测试这样可以解决Flex显示界面乱码的问题,但是有两个问题,第一:设置工作量大,第二:通过Ajax和后台交互的数据中含有中文显示还是乱码。

    6.在网上基本就只能找到这些解决方法,后来静下心来仔细分析最终解决了该问题。

    -----------------------------------------------------------------------------------------------------------

    最终解决办法:

    1:Flex的as源码第一句话就表明了Flex内部使用utf8字符集,因此必须保证C#后台返回来的数据也是utf8字符集,根本不用设置:System.useCodePage=true

    2:Flex中定义页面全局字体样式,这样就保证了控件的字体不乱码

      

    global
    {
        fontFamily:"微软雅黑";
    }

    3:在C#后台返回Json字符串时,增加ContentType的类型,该类型中指定字符集为utf8,最终解决Json中文数据显示正常

    context.Response.ContentType = "application/x-json;charset=UTF-8";
    context.Response.Write(strJsonData);
    context.Response.End();
  • 相关阅读:
    BOT、BT、PPP形式介绍(3)
    BOT、BT、PPP形式介绍(2)
    BOT、BT、PPP形式介绍(1)
    Linux系统下C++开发工具-远程终端软件使用
    Linux开发工具的使用
    libjingle开发人员指南
    优雅处理段错误
    捕捉段错误信号信号处理程序
    段错误bug的调试
    docker核心概念(镜像、容器、仓库)及基本操作
  • 原文地址:https://www.cnblogs.com/coolsundy/p/13675796.html
Copyright © 2011-2022 走看看