javascript - 即时解析 Markdown

标签 javascript php security markdown pagedown

我想在我的论坛中实现 Markdown 。

我研究了许多可能的方法,我将如何做到这一点,这就是我的想法:

一种简单的方法是在客户端使用 pagedown,在服务器端使用 php-markdown。

我的方法是将纯 markdown 保存到数据库,并在显示时转换为 HTML(使用 pagedown)。由于我已经为我的服务器端(HTML 元素白名单)和所有必要的人员配备了安全层,所以我认为这里不会有任何损失。

在这种情况下我赢了什么?好吧,我必须修改 pagedown 以使用自定义按钮和模式。这对我来说很难同时维护 php 和 JavaScript。

我的问题是:这是好的方法吗? 要打破这个问题:

  1. 客户端加载大约 30 是否有任何严重的开销 发布并将其转换为 HTML(性能)
  2. 有了我检查元素白名单的想法,有没有 我需要了解的安全问题? (安全)

最佳答案

我不会使用客户端 Markdown 引擎。从一些快速的谷歌上,它的意见是非常 CPU 密集型的。加载 30 个帖子会增加相当多的开销。

如果您将 MD 存储在数据库中,动态呈现为 HTML,然后使用一些可以很好地工作的缓存(memcached 或 redis)。

关于安全性,有一个 good read here ,这将需要一些额外的清理删除脚本/链接/重定向等。

进一步阅读

关于javascript - 即时解析 Markdown ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22793883/

相关文章:

java - 如何在 Java 中使用 .p12 文件对数据进行签名?

javascript - 如何在 Mocha 测试中要求相同的文件

php - 如何在 PHP 中以单一表单循环访问常见字段集?

postgresql - 为什么 PostgreSQL 默认将用户密码存储在 MD5 哈希中不是安全漏洞?

php - 如何在 MySQL LEFT JOIN 查询中访问两个同名的列?

PHP 代码不会在 while 循环中迭代到下一个数据变量(使用 bootstrap)

ruby-on-rails - 如何保护 database.yml 中存在的数据库凭据

javascript - 我应该导入什么来使用 jquery 数据表?

javascript - 如何安装和使用 jQuery Chosen 插件?

javascript - 将 JQuery 变量添加到 $ ('.class' ).html ("HTML");