-
Notifications
You must be signed in to change notification settings - Fork 580
Character set support
pierre-vigier edited this page Sep 8, 2016
·
4 revisions
Generally, it is good that you always use UTF-8 as character set, but you can change character set by Mojolicious::Plugin::Charset.
plugin charset => {charset => 'Shift-JIS'};
String in request parameter is converted from specified character set to Perl internal string.
# String in request parameter
Shift-JIS -> "Perl internal string"
In HTTP responce, Content-Type header contains specified character set.
Content-Type: text/html; charset=Shift-JIS
You remember to write "http-equiv" in HTML file and save it as specified character set
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Shift-JIS" />
<title>タイトル</title>
</head>
<body>
コンテンツ
</body>
</html>
From Mojolicious version 6 onwards, the Mojolicious::Plugin::Charset plugin has been removed. Instead of the plugin, you can setup charset manually, in a Mojolicious Lite application:
app->types->type(html => 'text/html;charset=Shift_JIS');
app->renderer->encoding('Shift_JIS');
app->hook(
before_dispatch => sub {
shift->req->default_charset('Shift_JIS')->url->query->charset('Shift_JIS');
}
);