我的目标是:
1)从我的GitHub存储库的README.md
文件中读取Markdown源代码。
2)将Markdown转换为HTML代码。
3)将输出的HTML应用于一个<div>
。
仅使用客户端技术实现。
我知道如何使用jQuery将Markdown代码转换为HTML,但不知道如何动态地从GitHub存储库的README.md文件中读取MD源代码。
http://markdown.io/<url_readme_file>
。假设我的readme.md文件的URL是http://raw.github.com/pankajparashar/nerdy-css/master/README.md
。因此,新的URL变成了http://markdown.io/http://raw.github.com/pankajparashar/nerdy-css/master/README.md
#md-content
id中提取内容。上述步骤的完整演示在这里 - 非工作链接已被删除
您应该查看:
https://github.com/zmckinnon/jquery-gh-readme
它使用GitHub API调用以下内容来检索readme的内容:
GET /repos/:owner/:repo/readme
然后将base64加密的内容进行转换。
接下来,使用marked将markdown内容转换为html。
README.md
文件原始文件是您想要加载的实际URL。
创建一个PHP文件 (或任何您正在使用的服务器端语言) 并将其命名为load.php
,专门用于加载远程文件(如您的RAW文件)。 PHP脚本将接受一个$_GET['url']
变量。 将变量传递给file_get_contents()
,并输出结果。 请注意,下面的代码是一个非常简单的例子。
echo file_get_contents($_GET['url']);
load
函数从PHP文件中获取数据内容。您的URL可能会类似于这样....load("load.php?url=https://raw.github.com/user/project/master/README.md")
最后,使用你已经描述的任何方法将其转换为Markdown格式。
file_get_contents()
: http://php.net/manual/en/function.file-get-contents.phpload()
: http://api.jquery.com/load/需要了解的是HTML确实可以在ReadMe.md文件中起作用。有了这个清晰的理解,我猜很多这样的问题会自动得到答案,例如如何在ReadMe文件中加粗字体,或者如何插入图像等等。还要注意,这很大程度上取决于您使用的应用程序/文本编辑器以及操作系统。
最近,我在Github的Readme.md文件中插入空行字符遇到了麻烦。我个人更喜欢在那里使用<br/>标签,并且我有一篇完整的文章描述了同样的问题:http://www.w3lc.com/2017/05/new-line-in-readme-file-github-fixing.html
我已经在Github存储库的一个提交中演示了这种变化,该提交在文章中有详细说明。这种理解对于处理问题以及找到许多其他用途的原因都是非常必要的!
此外,为了直接回答您的问题,您需要两个步骤: 1. 找到ReadMe.md文件在Raw版本中的Url。例如:https://raw.githubusercontent.com/Anwar-Faiz/forkrap/master/README.md 2. 现在,如果您要在服务器端使用php的file_gets_content等功能,可以加载该url。或者,如果您想使用jquery,可以使用Load()。