当前位置: 首页 > news >正文

官方制作网站百度大数据平台

官方制作网站,百度大数据平台,wordpress自定义页面,购物网站建设的意义与目的目录 需求 文本编码检测 Markdown→HTML 注意 实现 需求 Markdown是一种文本格式;不被浏览器支持;编写一个在服务器端把Markdown转换为HTML的中间件。我们开发的中间件是构建在ASP.NET Core内置的StaticFiles中间件之上,并且在它之前运…

目录

需求

文本编码检测

Markdown→HTML

注意

实现


需求

  1. Markdown是一种文本格式;不被浏览器支持;编写一个在服务器端把Markdown转换为HTML的中间件。
  2. 我们开发的中间件是构建在ASP.NET Core内置的StaticFiles中间件之上,并且在它之前运行,所有的*.md文件都被放到wwwroot文件夹下,当我们请求wwwroot下其他的静态文件的时候,StaticFiles中间件会把它们返回给浏览器,而当我们请求wwwroot下的*.md文件的时候,我们编写的中间件会读取对应的*.md文件并且把它们转换为HTML格式返回给浏览器。

文本编码检测

Nuget:Install-Package UTF.Unknown

DetectionResult result = CharsetDetector.DetectFromStream(stream);
string charset = result.Detected.EncodingName

CharsetDetector/UTF-unknown: Character set detector build in C# - .NET 5+, .NET Core 2+, .NET standard 1+ & .NET 4+https://github.com/CharsetDetector/UTF-unknownhttps://github.com/CharsetDetector/UTF-unknownhttps://github.com/CharsetDetector/UTF-unknownhttps://github.com/CharsetDetector/UTF-unknown

Markdown→HTML

Nuget:Install-Package MarkdownSharp

Markdown markdown = new Markdown();
string html = markdown.Transform(mdText);

注意

app.UseMiddleware<MarkdownMiddleware>();需在app.UseStaticFiles();之前注册,如果先注册了静态文件中间件,那么所有对静态文件的请求都会直接由静态文件中间件处理,而不会经过你的自定义中间件。

app.UseMiddleware<MarkdownMiddleware>();
//配置服务器为静态文件提供服务
app.UseStaticFiles();

实现

public class MarkdownMiddleware
{private readonly RequestDelegate _next;private readonly IWebHostEnvironment hostEnv;public MarkdownMiddleware(RequestDelegate next, IWebHostEnvironment hostEnv){_next = next;this.hostEnv = hostEnv;}public async Task InvokeAsync(HttpContext context){//获取请求路径var path = context.Request.Path.Value;//判断请求路径是否以.md结尾if (!path.EndsWith(".md", true, null)){await _next(context);return;}//判断请求路径是否存在var file = hostEnv.WebRootFileProvider.GetFileInfo(path);if (!file.Exists){await _next(context);return;}//读取文件流using var stream = file.CreateReadStream();//UTF.Unknown检测文件编码,获取检测结果DetectionResult result = CharsetDetector.DetectFromStream(stream);string charset = result.Detected.EncodingName ?? "UTF-8";//流的位置重置stream.Position = 0;//读取文件内容,并指定编码using StreamReader reader = new StreamReader(stream, Encoding.GetEncoding(charset));string mdText = await reader.ReadToEndAsync();//将Markdown转换为HTMLMarkdown markdown = new Markdown();string html = markdown.Transform(mdText);//设置响应头context.Response.ContentType = "text/html;charset=UTF-8";await context.Response.WriteAsync(html);}
}
http://www.shuangfujiaoyu.com/news/30968.html

相关文章:

  • 云服务器可以做多个网站性价比高的seo网站优化
  • 上海平台网站制作公司哪家好在线查询网站收录
  • 兼职网站平台有哪些百度客服怎么转人工电话
  • 网页设计企业网站设计的功能海外网站cdn加速
  • 如何看网站是用什么程序做的企业站seo案例分析
  • 微网站的建设模板有哪些最新资讯热点
  • 网站建站主题互联网推广销售
  • 山西建站推广东莞网络营销公司
  • 网站建设开票规格明细单位怎么写江苏网站开发
  • 用ps做美食网站网络服务网络推广
  • 私人让做彩票网站吗自己怎么优化我网站关键词
  • 网站上传图片加水印建站系统哪个好
  • 做网站的怎么办理营业执照关键词排名优化是什么意思
  • 秦皇岛哪家公司网站建设好百度推广客户端电脑版
  • win7 iis设置网站首页百度人工服务24小时电话
  • 庐江魅力网做网站号码网站seo诊断分析报告
  • 简历模板网站免费英文外链seo兼职
  • 塘厦东莞网站建设谷歌seo什么意思
  • 哪个网站做logo好乔拓云智能建站
  • 德州做网站的公司产品如何在网上推广
  • 怎么做最火的视频网站软文广告经典案例100字
  • 做网站的流程图营销策略ppt
  • 购物网站开发文献综述免费seo诊断
  • php 手机网站哪个网站做推广效果好
  • 音乐网站怎么做新东方在线koolearn
  • wordpress视频采集插件麒麟seo软件
  • 手机网站 像素seo是什么字
  • 企业动态网站开发周期seo软文是什么
  • 美观网站建设物美价廉收录提交入口
  • 网站效果图怎么做网络口碑营销名词解释