Skip to content

Embed URL

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
diff for recreating an apparent bug in from_json under Perl Dancer
diff -r MyWeb-App/lib/MyWeb/App.pm MyWeb-App-2/lib/MyWeb/App.pm
3c3
<
---
> set serializer => 'JSON';
9a10,14
> post '/test/' => sub {
> my $data = from_json( param('json'), {utf8 => 0});
> return { msg => $data->{q} }
> };
>
10a16
>
diff -r MyWeb-App/views/index.tt MyWeb-App-2/views/index.tt
1,148c1,16
<
< <!--
< Credit goes to the Ruby on Rails team for this page
< has been heavily based on the default Rails page that is
< built with a scaffolded application.
<
< Thanks a lot to them for their work.
<
< See Ruby on Rails if you want a kickass framework in Ruby:
< http://www.rubyonrails.org/
< -->
<
< <div id="page">
< <div id="sidebar">
< <ul id="sidebar-items">
< <li>
< <h3>Join the community</h3>
< <ul class="links">
<
< <li><a href="http://perldancer.org/">PerlDancer</a></li>
< <li><a href="http://twitter.com/PerlDancer/">Official Twitter</a></li>
< <li><a href="http://github.com/sukria/Dancer/">GitHub Community</a></li>
< </ul>
< </li>
<
< <li>
< <h3>Browse the documentation</h3>
<
< <ul class="links">
< <li><a
< href="http://search.cpan.org/dist/Dancer/lib/Dancer/Introduction.pod">Introduction</a></li>
< <li><a href="http://search.cpan.org/dist/Dancer/lib/Dancer/Cookbook.pod">Cookbook</a></li>
< <li><a href="http://search.cpan.org/dist/Dancer/lib/Dancer/Deployment.pod">Deployment Guide</a></li>
< <li><a
< href="http://search.cpan.org/dist/Dancer/lib/Dancer/Tutorial.pod"
< title="a tutorial to build a small blog engine with Dancer">Tutorial</a></li>
< </ul>
< </li>
<
< <li>
< <h3>Your application's environment</h3>
<
< <ul>
< <li>Location: <code>/cygdrive/r/daniel/cwlc/test/MyWeb-App</code></li>
< <li>Template engine: <code><% settings.template %></code></li>
< <li>Logger: <code><% settings.logger %></code></li>
< <li>Environment: <code><% settings.environment %></code></li>
< </ul>
<
< </li>
< </ul>
<
< </div>
<
< <div id="content">
< <div id="header">
< <h1>Perl is dancing</h1>
< <h2>You&rsquo;ve joined the dance floor!</h2>
< </div>
<
< <div id="getting-started">
< <h1>Getting started</h1>
< <h2>Here&rsquo;s how to get dancing:</h2>
<
< <h3><a href="#" id="about_env_link">About your application's environment</a></h3>
<
< <div id="about-content" style="display: none;">
< <table>
< <tbody>
< <tr>
< <td>Perl version</td>
< <td><tt><% perl_version %></tt></td>
< </tr>
< <tr>
< <td>Dancer version</td>
< <td><tt><% dancer_version %></tt></td>
< </tr>
< <tr>
< <td>Backend</td>
< <td><tt><% settings.apphandler %></tt></td>
< </tr>
< <tr>
< <td>Appdir</td>
< <td><tt>/cygdrive/r/daniel/cwlc/test/MyWeb-App</tt></td>
< </tr>
< <tr>
< <td>Template engine</td>
< <td><tt><% settings.template %></tt></td>
< </tr>
< <tr>
< <td>Logger engine</td>
< <td><tt><% settings.logger %></tt></td>
< </tr>
< <tr>
< <td>Running environment</td>
< <td><tt><% settings.environment %></tt></td>
< </tr>
< </tbody>
< </table>
< </div>
<
< <script type="text/javascript">
< $('#about_env_link').click(function() {
< $('#about-content').slideToggle('fast', function() {
< // ok
< });
< return( false );
< });
< </script>
<
<
< <ol>
< <li>
< <h2>Tune your application</h2>
<
< <p>
< Your application is configured via a global configuration file,
< <tt>config.yml</tt> and an "environment" configuration file,
< <tt>environments/development.yml</tt>. Edit those files if you
< want to change the settings of your application.
< </p>
< </li>
<
< <li>
< <h2>Add your own routes</h2>
<
< <p>
< The default route that displays this page can be removed,
< it's just here to help you get started. The template used to
< generate this content is located in
< <code>views/index.tt</code>.
< You can add some routes to <tt>lib/MyWeb/App.pm</tt>.
< </p>
< </li>
<
< <li>
< <h2>Enjoy web development again</h2>
<
< <p>
< Once you've made your changes, restart your standalone server
< (bin/app.pl) and you're ready to test your web application.
< </p>
< </li>
<
< </ol>
< </div>
< </div>
< </div>
---
> <input id="q" value="caf&eacute;"/>
> <button onclick="
> $.ajax({
> url: '/test/',
> type: 'POST',
> data: {
> 'json': JSON.stringify(
> { 'q': $('#q').val() }
> ),
> },
> dataType: 'json',
> success: function(data) {
> alert (data.msg);
> }
> });
> ">Press Me!</button>
\ No newline at end of file
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.