非Web程序员的Web编程(在Perl中)

Dyn*_*mic 6 perl

我期待在Perl中启动Web编程(Perl是我所知道的唯一语言).问题是,我没有任何关于网络的知识,除了浏览它.我不知道从哪里开始.

所以我的问题是......

我从哪里开始学习Web编程?我应该知道什么?我该怎么用?

我提前感谢大家的回答和帮助.

Que*_*tin 15

要理解的关键事项是:

您可以发送给浏览器的内容

...或者更确切地说,您打算发送给浏览器的内容,但是了解其他内容是有用的(因为,特别是在复杂的Web应用程序中,您需要选择适当的数据格式).

例如

  • HTML
  • CSS
  • JavaScript的
  • 图片
  • JSON
  • XML
  • PDF文件

当您动态生成数据时,您还应该了解可用的工具(例如,Perl社区强烈偏好TT生成HTML,但还有其他选项,如Mason,而JSON :: Any往往是我对JSON的转向).

运输机制

  • HTTP(包括要使用的状态代码以及何时,如何进行重定向,使用何种方法(POST,GET,PUT等)以及何时使用).
  • HTTPS(带SSL加密的HTTP)

如何让网络服务器与你的Perl交谈

  • PSGI/Plack如果你想要现代和高效
  • CGI非常简单
  • mod_perl如果你想要疯狂的权力级别(我看到有人将Apache HTTPD转换为使用它的SMTP垃圾邮件过滤器).

安全

如何防范恶意输入(基本上归结为知道如何以一种格式(如提交的表单数据)获取数据并将其转换为另一种格式(如HTML或SQL).

网络框架

您可以将大量工作推向框架,框架提供了组织Web应用程序的结构化方法.

  • Web ::简单很简单
  • 舞者似乎占据了中间地位(虽然我必须承认我还没有机会使用它)
  • Catalyst可能具有最陡峭的学习曲线,但却带有很多功能和插件.

  • 您可以发送您喜欢的任何数据.我重写了那部分答案. (3认同)