[文章存档]Azure上部署的java app在向第三方服务传送中文时出现乱码
----------------------------------------------分割线--------------------------------------------------------------------------
部署在Azure 上的Web APP应用在向第三方传送中文字符串时,第三方服务接受到的是类似于??之类的乱码,而本地运行发送是正常的
这个是由于APP Service 环境的默认编码为GBK,在向第三方发送数据时要做默认的转码工作,即执行new String(”您要传送的字符串”.getBytes(),”UTF-8”),而getBytes方法如果没有参数的话会使用系统默认的编码方式编码,由于gbk编码和utf-8编码方式不同,这个是个大坑,具体的大家可以百度一下gbk转utf-8编码,所以在转换之后会出现乱码的现象。
,解决方法是改变jvm默认的编码方式(改变系统的默认编码方式也可以,不过Azure上不允许改变系统默认的编码方式),在site/wwwroot文件夹下创建web.config文件(如果已经有请直接修改),添加以下内容:
<configuration>
<system.webServer>
<handlers>
<add name="httpPlatformHandler" path="*" verb="*" modules="httpPlatformHandler" resourceType="Unspecified" />
</handlers>
<httpPlatform processPath="%AZURE_TOMCAT85_HOME%\bin\startup.bat" arguments="">
<environmentVariables>
<environmentVariable name="JAVA_OPTS" value="-Djava.net.preferIPv4Stack=true -Dfile.encoding=UTF-8" />
</environmentVariables>
</httpPlatform>
</system.webServer>
</configuration>
最新更新:目前Azure Web APP环境已默认修改成UTF-8编码,该文档失效。不过仍然可以通过该方法修改jvm的编码方式。
[文章存档]Azure上部署的java app在向第三方服务传送中文时出现乱码的更多相关文章
- 在Azure上部署IPv6的App通过IOS App Store审核
随着中国企业出海Go Global,越来越多的用户开始在Global Azure部署自己的应用.由于对Global Azure功能和文档的不熟悉,使用过程中或多或少遇到了一些坑.事实上呢,这些并不是坑 ...
- 在 Windows Azure 上部署预配置 Oracle VM
Microsoft 和 Oracle 近期宣布建立战略合作伙伴关系,基于此,我们将通过 Windows Azure 镜像库推出多种常用的 Oracle 软件配置.即日起,客户可以在 Windows S ...
- Azure上部署Barracuda WAF集群 --- 2
前面一篇文章讲了如何在Azure上部署Barracuda.这篇文章聊一聊如何配置Barracuda. License 向Barracuda的销售人员申请WAF的License.得到License后打开 ...
- Azure上部署FTP服务
FTP是个比较复杂的协议,其协议分为控制层和数据层,工作模式分为主动和被动两种模式. 在默认的Active模式下其工作原理如下: 可以看到,客户端发起FTP的请求道服务器端,FTP的端口是21.用户在 ...
- 在 Azure 上部署 Asp.NET Core Web App
在云计算大行其道的时代,当你要部署一个网站时第一选择肯定是各式各样的云端服务.那么究竟使用什么样的云端服务才能够以最快捷的方式部署一个 ASP.NET Core的网站呢?Azure 的 Web App ...
- 在Linux(ubuntu 14.04)上部署WeX5跨平台App(HTML5)
1. 前言 这篇文章讲述的是把毕业设计的用 WeX5 开发的项目部署到阿里云的Linux(ubuntu14.04)上,本来可以部署在WeX5自带的服务器上,但是WeX5的服务器我以前部署的项目突然 ...
- 在公有云AZURE上部署私有云AZUREPACK以及WEBSITE CLOUD(一)
(一)前言 本文主要介绍了实践部署AzurePack的Website Cloud的过程.在部署之前, 首先要对AzurePack有个基本的了解. Azure Pack是微软的私有云方案,具有弹性. ...
- 【翻译】使用Visual Studio在Azure上部署Asp.Net Core Web应用
配置运行环境 Install the latest Azure SDK for Visual Studio. The SDK installs Visual Studio if you don't a ...
- 在公有云AZURE上部署私有云AZUREPACK以及WEBSITE CLOUD(二)
前言 (二)建立虚拟网络环境,以及域控和DNS服务器 1搭建虚拟网络环境 在Azure上创建虚拟网络.本例选择的是东南亚数据中心.后面在创建虚机的时候,也选择这个数据中心. VNet Name: ...
随机推荐
- qt调用sql server存储过程并获取output参数
最近新做的一个项目需要使用qt5连接另一台机器上的sql server,虽然网上已有类似文章,但还是有些其中很少提及的问题,故在这里汇总下: qt连接sql server可以参考这篇文章: <Q ...
- Eclipse中Tomcat的配置
1.Window-Preferences-Server-Runtime Environments 2.点击Add,选择相应的Tomcat版本,我的是7.0的所以我选择这个.并勾选Create a ne ...
- 解决Win10无法安装.Net Framework 3.5,错误代码0x800F081F
重新安装了一遍Win10,但是不知怎的无法安装.net framework 3.5,即便是下载离线安装包也没法用. 网上有人说需要使用win10的ISO文件,个人感觉太麻烦,在这里分享一个很方便的操作 ...
- 团队作业7——第二次项目冲刺(Beta版本)day1
项目成员: 曾海明(组长):201421122036 于波(组员):201421122058 蓝朝浩(组员):201421122048 王珏 (组员):201421122057 叶赐红(组员):20 ...
- PyQt5--StatusBar
# -*- coding:utf-8 -*- ''' Created on Sep 13, 2018 @author: SaShuangYiBing ''' import sys from PyQt5 ...
- objc.io 待看文章
https://objccn.io/issues/ https://objccn.io/issues/ 使用 VIPER 构建 iOS 应用 并发编程
- 性能问题案例01——sybase数据库内存问题
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/xuepiaohan2006/article/details/30064399 近期现场反馈问 ...
- OpenCV——输入输出XML和YAML文件
- filebeat配置
filebeat收集日志配置: filebeat.prospectors: - input_type: log enabled: true paths: - /mydata/erp_datacente ...
- robotframe 自定义开发库
site-packages(这个路径一定要在系统path路径中)下面创建一个UserDefineLibrary文件夹:目录结构如下 ---- ----- UserDefineLibrary __ in ...