Html 一路保持unicode编码
从网站表单提交的阿拉伯语用户数据偶尔会出现在我们的数据库中。用户会键入如下内容: ا 在输入表单中,post由服务器接收并存储在数据库中。当我们从数据库检索消息时,它的内容如下: ØØØØØØØØØØØØØØØÙØØØÙØØØÙØØÙØÙ…Ù 表单位于带有以下标记的嵌入式iframe页面中:Html 一路保持unicode编码,html,utf-8,character-encoding,http-headers,Html,Utf 8,Character Encoding,Http Headers,从网站表单提交的阿拉伯语用户数据偶尔会出现在我们的数据库中。用户会键入如下内容: ا 在输入表单中,post由服务器接收并存储在数据库中。当我们从数据库检索消息时,它的内容如下: ØØØØØØØØØØØØØØØÙØØØÙØØØÙØØÙØÙ…Ù 表单位于带有以下标记的嵌入式iframe页面中: <!DOCTYPE HTML> <html> <head> <meta content="text/html; charset=UTF-8" http-
<!DOCTYPE HTML>
<html>
<head>
<meta content="text/html; charset=UTF-8" http-equiv="content-type" />
<!-- other header elements -->
</head>
<body>
<form accept-charset="utf-8" action="https://www.salesforce.com/servlet/servlet.WebToLead?encoding=UTF-8" method="post">
<!-- other body elements -->
</body>
</html>
post将生成这些请求头
Accept */*
Accept-Encoding gzip, deflate
Accept-Language en-US,en;q=0.5
Cache-Control no-cache
Connection keep-alive
Content-Length 543
Content-Type application/x-www-form-urlencoded; charset=UTF-8
Host www.salesforce.com
Origin [ -- redacted -- ]
Pragma no-cache
Referer [ -- redacted -- ]
User-Agent Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:28.0) Gecko/20100101 Firefox/28.0 FirePHP/0.7.4
x-insight activate
接受*/*
接受编码gzip,放气
接受我们的语言,嗯;q=0.5
缓存控制无缓存
连接保持活动状态
内容长度543
内容类型应用程序/x-www-form-urlencoded;字符集=UTF-8
主持人:www.salesforce.com
来源[--编辑--]
Pragma无缓存
参考者[--编辑的--]
用户代理Mozilla/5.0(Macintosh;英特尔Mac OS X 10.9;rv:28.0)Gecko/20100101 Firefox/28.0 FireHP/0.7.4
x-insight激活
并接收这些响应头
HTTP/1.1 200 OK
Date: Fri, 25 Apr 2014 09:15:49 GMT
Cache-Control: private
Content-Type: text/html;charset=UTF-8
Transfer-Encoding: chunked
HTTP/1.1200ok
日期:2014年4月25日星期五09:15:49 GMT
缓存控制:专用
内容类型:text/html;字符集=UTF-8
传输编码:分块
我无法控制为表单提供服务的机器或处理表单数据的服务器的服务器配置
在页面标记中,我还能做些什么来防止这个问题吗?是否存在忽略accept charset
属性的已知用户代理
既然角色混乱只是偶尔发生,那么尝试和复制/隔离问题的最佳方法是什么
谢谢 你最好与Salesforce合作来解决这个问题,而不是在互联网上随机找人。Mojibake不适用于数据库。您能进一步解释问题所在吗?@AlastairMcCormack请查看我的更新。什么是数据库,您使用什么编程语言?您如何存储和检索数据库,您使用什么来验证数据库内容?这些元素中的每一个都需要正确处理编码。@正如我所说的,由于服务器的多租户,我无法控制如何处理输入并将其存储到数据库中。我专注于我可以控制的元素。可以改进吗?在检索时,我使用Apex脚本,但我非常确定转换交换不会在那个阶段发生。